2010-02-19 3 views
3

문제 :완전한 기능을 갖춘 크로스 플랫폼 샵 라인을위한 해킹이 있습니까?

"파일 확장자"의 개념이 있기 때문에 필요 ...

post-commit 
pre-commit 
pre-rebase 

등 다음 .git/후크 디렉토리에 분명히 스크립트 중 하나와 일치하는 파일 이름에 따라 달라집니다 "shebang line"은 리눅스 박스에서 실행되고 실행되는 한 파일이 어떻게 실행되어야 하는지를 가리킨다.

문제는 Windows 상자에서 실행할 스크립트가있는 경우입니다.

질문 : Windows 컴퓨터에서 이해할 수있는 후크 스크립트를 실행하는 방법이 있습니까?

답변

1

Windows에 확장 기능이없는 파일을 실행하는 개념이 없다고 생각합니다. 해결 방법은 1) Cybwin git을 bash에서 사용하는 것입니다. bash에서는 전체 세방 비즈니스가 작동합니다. 2) Windows git 버전에서 해킹되어 실제로 shebang 행 자체를 구문 분석하고 적절한 인터프리터를로드합니다. ... 나는 후자에 철학적 반대의 모든 종류를 볼 수 있습니다, 그래서 나는 그런 일이 없을거야 거라 생각

실제로 옵션 3)에 대한 정착
0

:

자식을 호출하는 윈도우 "래퍼"스크립트 만들기 은 내가 실행하려는 관련 후크를 호출합니다. 단점은 래퍼 프로그램이 단지 표준 훅 파일 만 사용할 수 있다면 자동으로 수행 할 래퍼 프로그램을 구성해야한다는 것입니다.

3

나는이 일에 뒤처지고 있음을 알고 있지만 해결책은있다. 파이썬을 사용하는 경우 PATHEXT 환경 변수 (제어판, 시스템, 고급 환경 변수)에 ".py"를 추가하십시오. 특정 스크립팅 언어와 마찬가지로 그런 다음 후크 이름을 post-commit.py, pre-commit.py 등으로 지정합니다. 프로그램이 Windows에 특정 디렉토리에서 "커밋 후"파일을 실행하도록 요청하면 Windows는 일치하는 파일을 찾을 때까지 PATHEXT를 순서대로 조사합니다 "post-commit.extension"을 실행 한 다음 실행합니다. 나는 Windows에서 svn hooks로 오래 전 이것을했다.