Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hooks are not executed on windows correctly #703

Closed
yarikoptic opened this issue Nov 28, 2017 · 0 comments · Fixed by #1399
Closed

Hooks are not executed on windows correctly #703

yarikoptic opened this issue Nov 28, 2017 · 0 comments · Fixed by #1399

Comments

@yarikoptic
Copy link
Contributor

Upon quick troubleshooting of #702 on appveyor, it seems that their (succesfull) execution was never tested on windows (last succesful appeveyor run is https://ci.appveyor.com/project/Byron/gitpython/build/1.0.161 if I got it right).

I could not figure out a legit way to make hooks runnable without us parsing the shebang etc.

idbrii added a commit to idbrii/GitPython that referenced this issue Jan 13, 2022
Fix gitpython-developers#971. Partly resolve gitpython-developers#703.

If the hook doesn't have a file extension, then Windows won't know how
to run it and you'll get "[WinError 193] %1 is not a valid Win32
application". It's very likely that it's a shell script of some kind, so
use bash.exe (commonly installed via Windows Subsystem for Linux). We
don't want to run all hooks with bash because they could be .bat files.

Update tests to get several hook ones working. More work necessary to
get commit-msg hook working. The hook writes to the wrong file because
it's not using forward slashes in the path:
C:\Users\idbrii\AppData\Local\Temp\bare_test_commit_msg_hook_successy5fo00du\CUsersidbriiAppDataLocalTempbare_test_commit_msg_hook_successy5fo00duCOMMIT_EDITMSG
Byron pushed a commit that referenced this issue Jan 14, 2022
Fix #971. Partly resolve #703.

If the hook doesn't have a file extension, then Windows won't know how
to run it and you'll get "[WinError 193] %1 is not a valid Win32
application". It's very likely that it's a shell script of some kind, so
use bash.exe (commonly installed via Windows Subsystem for Linux). We
don't want to run all hooks with bash because they could be .bat files.

Update tests to get several hook ones working. More work necessary to
get commit-msg hook working. The hook writes to the wrong file because
it's not using forward slashes in the path:
C:\Users\idbrii\AppData\Local\Temp\bare_test_commit_msg_hook_successy5fo00du\CUsersidbriiAppDataLocalTempbare_test_commit_msg_hook_successy5fo00duCOMMIT_EDITMSG
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging a pull request may close this issue.

2 participants