2011-10-19 4 views
1

커밋 메시지를 매개 변수로 전달하는 powershell 스크립트를 호출하는 커밋 - msg 스크립트를 작성하려고합니다.Windows에서 git commit-msg의 커밋 메시지에 액세스

지금까지 매개 변수를 사용하여 powershell 스크립트를 실행할 수 있었지만 commit-msg 내부의 커밋 메시지에 액세스하는 방법을 알 수 없습니다. 커밋이 아직 완료되지 않았으므로 로그를 사용할 수 없습니다. 다른 옵션은 무엇입니까?

exec c:/Windows/System32/WindowsPowerShell/v1.0/powershell.exe -Command "& {C:/Windows/System32/WindowsPowerShell/git-pre-commit.ps1 '{the_git_commit_message}'}" 
+0

당신이 (특정 이름과 관련된 모든 스크립트를 제공 또는 사용의 예를 제공, 아마도) 당신이 원하는 정보의 흐름을 명확히 할 수

http://progit.org/book/ch7-3.html

건배 :

여기에 대해 자세히 알아보기 ? 다른 스크립트에 매개 변수를 전달할 수있는 것처럼 들립니다. –

+0

커밋 메시지가 특정 기준을 충족시키지 못하면 커밋을 중단하기위한 궁극적 인 목표로 커밋이 완료되기 전에 커밋 메시지를 만들어야합니다. –

답변

1

commit-msg 후크 ($1)에 대한 인수는 메시지를 갖는 파일의 이름입니다 : 여기

내가있는이 커밋 MSG 지금까지 코드입니다. 파일 (경로)을 powershell 스크립트에 전달하고 원하는 내용을이 파일에 추가하고 스크립트에서 종료하십시오. 몇 가지 아이디어를 얻을 .git/후크에서 커밋 msg.sample 파일을 봐 :

또한, 당신은 당신이 무엇을하고 있는지에 따라서

PS prepare-commit-msg 후크를보고 할 수 있습니다. 프로 힘내 책에서

+0

내가 알 수있는 한, 그 파일에는 최신 커밋 메시지가 포함되어 있지 않습니다. 후크 ($ 1)는 나에게 도움이되지 않는 COMMIT_EDITMESSAGE를 제공합니다. –

+1

@JacobHuggart - 커밋 메시지가 저장된 파일 이름입니다. 파일을 열고 전체 커밋 메시지를 읽을 수 있습니다. –

1

:

커밋 전체 과정이 완료된 후, 후크에게 실행을 후 커밋합니다. 매개 변수를 사용하지는 않지만 git log -1 HEAD를 실행하여 마지막으로 커밋을 쉽게 얻을 수 있습니다. 일반적으로이 스크립트는 알림 또는 유사한 용도로 사용됩니다. 내가 제대로 이해하면

당신은 실제 메시지를 원하고 PowerShell 스크립트로 커밋 메시지 내용을 전달하고 메시지를 수정에는 관심이 없다.