Windows IIS 서버에서 원격 저장소 (hgweb 사용)에 후크를 설정하려고합니다. 내가 가진 문제는 저장소가 hgweb의 config에 UNC 경로로 지정되어 있고 후크가 cmd.exe가 지원하지 않는 UNC 경로를 사용하여 cmd.exe를 실행한다는 것입니다.Mercurial에서 후크를 지정할 때 사용할 Windows 셸을 지정할 수 있습니까?
다른 쉘을 대신 실행하도록 지정할 수 있습니까?
Windows IIS 서버에서 원격 저장소 (hgweb 사용)에 후크를 설정하려고합니다. 내가 가진 문제는 저장소가 hgweb의 config에 UNC 경로로 지정되어 있고 후크가 cmd.exe가 지원하지 않는 UNC 경로를 사용하여 cmd.exe를 실행한다는 것입니다.Mercurial에서 후크를 지정할 때 사용할 Windows 셸을 지정할 수 있습니까?
다른 쉘을 대신 실행하도록 지정할 수 있습니까?
지금까지 내가 아는 한, 당신은 (하지만 리눅스 호스트에서 당신이 할 수있는 생각) 대신
Windows에서 다른 쉘을 사용하는 의욕을 말할 수 없다, 당신은 당신의 훅 스크립트 호출을 할 수 다른 쉘로 쉘 다른 스크립트 또는 명령 집합을 실행해야합니다. 지저분하지만, 유감스럽게도 Windows는 특히 * nix 기반 플랫폼과 비교할 때 뛰어난 스크립팅 지원 기능을 제공하지 못합니다. 다음
의욕 hooks can be defined two ways 쉘 후크 등
는 파이썬 후크로 변경하면 당신은 분명히 물건들을 할 수있는 파이썬의 모든 힘을 가질 것입니다. 물론 어떤 언어로든 프로그램을 작성하여 외부 훅에서 실행할 수없는 이유는 없습니다. 왜냐하면 cdeszaq는
그리고 in-process 파이썬 훅을 사용하는 또 다른 이점은 플랫폼 간 플랫폼이라는 점입니다. 따라서 Windows가 아닌 플랫폼으로 전환하면 잠재적으로 훅 스크립트를 다시 쓸 필요가 없습니다. – cdeszaq
문제는 외부 후크의 경우 Mercurial이 cmd.exe에서 시작하는 것 같습니다. 적어도 "hg update"(들어오는 훅에서 원격 repo를 가져 오기 위해)를 호출하려고 할 때 cmd.exe가 실행됩니다. –
@LeeAtkinson - 그러면 외부 cmd 프로세스에서 실행되지 않고 hg 자체와 동일한 내부 프로세스에서 실행되므로 python 후크를 사용하십시오. – cdeszaq
을 제안하거나 파이썬 후크 –
@jk로 작성할 수 있습니다. .it이 질문에 대한 정답입니다. 내 문제는 해결 방법 일뿐입니다. – cdeszaq
좋아,하지만 다른 프로그램/스크립트를 실행하는 외부 후크도 완벽하게 유효하다고 생각합니다 –