我试图用 Python 写一个钩子。推送后执行时出现问题。例如,在推送之后,应该重置工作副本。重置已执行,但在错误的文件夹中。推送到“.git”文件夹而不是 repo 文件夹后,我得到了一个新的工作副本。有人可以解释发生了什么吗?
process = subprocess.Popen("git reset --hard".split(), stdout=subprocess.PIPE)
我正在使用上面的代码来重置服务器端的 repo
对于错误文件夹问题:
我的解决方案是使用 Git 挂钩安装程序,它在挂钩脚本中硬编码 Git 存储库路径,因此无论您在哪里运行提交挂钩脚本,提交挂钩脚本本身都知道 git repo 文件夹在哪里:
https://github.com/miohtama/vvv/blob/master/vvv/hooks/git.py