尝试实现工作流的 GIT 新手。
我们的本地办公室设置使用与 Apache、Linux 等共享的 Debian Samba 磁盘。因此,我们从类型为“本地路径”的“w:/webs/site.com/site.git
这是 BARE repos”克隆项目。
我们创建了一个 bash 脚本作为位于w:/webs/site.com/site.git/hooks/post-receive上的“post-receive”钩子,我们认为它会由“linux”git 以类似的方式执行`/home/samba/webs/site.com/hooks... 包含一个条件脚本,具体取决于提交到结帐的分支,类似于:
GIT_WORK_TREE=/home/samba/webs/site.com/html git checkout -f $BRANCH
问题是当我们从我们的 tortoiseGIT 本地副本推送到源分支时,钩子失败并显示:
远程:致命:无法切换到“C:/Program Files (x86)/Git/home/samba/webs/site.com/html”:没有这样的文件或目录到 w:/webs/site.com/site。混帐
我们理解这意味着客户端 GIT 正在执行 WORK_TREE 或整个钩子脚本。
问题是我们计划打开 SSH 和其他对存储库的访问,所以如果我们使用 Windows 本地路径,当我们从非 Windows 本地网络客户端推送时,这些路径会失败。替代方案可能是通过 SSH 提取存储库,即使在本地也是如此,但我们认为这相当低效,并且仅在此钩子问题中需要。
我们可以使用的任何建议和/或 GIT 变量都可以兼容吗?谢谢。