청포도잼
180
2018-09-04 14:36:21 작성 2018-09-04 14:38:06 수정됨
0
792

SVN에서 Post-commit hook 에 대해 질문드립니다.


안녕하세요. 저는 입사한지 2달된 신입 새내기입니다.


제가 궁금한 것이 생겼는데 아무리 구글링을 해봐도 나오지 않아서 이렇게 여쭤봅니다.

인터넷에 떠도는 예제들을 보면, Pre-commit hook은 커밋메시지 글자수, 이슈번호 등으로 규칙을 강제해서 commit이 안되고 에러로그를 출력할 수 있고, Post-commit hook은 commit이 완료되었을 때 메일로 알려주는걸 할 수 있다는건 알겠습니다.

근데 제가 쉘스크립트쪽을 아예 몰라서 지식이 아닌 구글링을 통해서 해보고 있긴 한데,

Post-commit hook에서 Commit이 되었을 때 Pre-commit hook 에 에러났을 때 처럼 메시지를 띄울 수 있는 방법이 있나 해서 질문드립니다.(메일x)

예를들면, Comment가 있으면 '코멘트 있음.', 없으면 '코멘트 없음.' 이렇게 창을 띄워주는게 가능한지, 가능하다면 어떤 방법으로 하는지 여쭤보고 싶습니다.

Post-commit hook 쪽에 Pre-commit hook 에 써져있는 코드들을 복사해서 붙여봤는데 제대로 작동을 안하더군요.(comment가 있어도 없다에서 걸립니다.)


@echo off
::
:: After commits that have empty log messages.
::
@echo off

setlocal

rem Subversion sends through the path to the repository and transaction id
set REPOS=%1
set TXN=%2

set SVNLOOK="C:\Program Files\VisualSVN Server\bin\svnlook.exe"

%SVNLOOK% log %REPOS% -t %TXN% | findstr . > nul
if %errorlevel% gtr 0 (goto EMPTY) else (goto NOT_EMPTY)

:EMPTY
echo 커밋메시지없음 1>&2
echo 하지만커밋이됨 1>&2
goto ERROR_EXIT

:NOT_EMPTY
echo 커밋메시지있음 1>&2
echo 커밋됨 1>&2
goto NORMAL_EXIT

:ERROR_EXIT
exit 1

:NORMAL_EXIT
exit 0

이런식으로 썻는데 커밋메시지가 있어도 EMPTY 쪽에 걸려서 어떻게 해줘야될지를 잘 모르겠습니다. 아예 생각 자체를 잘못하고있는건가요?

지금 사용하고있는 환경은 VisualSVN 과 Eclipse입니다.

0
  • 답변 0

  • 로그인을 하시면 답변을 등록할 수 있습니다.