我有一个 windows 机器设置如下:
N:\path\to\dir\project1.git
N:\path\to\dir\running_dir
其中N:
是映射的网络驱动器。
我试图在推送到project1.git
后自动结帐running_dir
project1.git
。我跟着this post on exporting GIT_WORK_TREE;但是,我对我在post-receive
钩子中使用的路径感到困惑:
#!/bin/sh
GIT_WORK_TREE= ????????
export GIT_WORK_TREE
git checkout -f
假设N:
映射到远程Windows机器上的C:\a\b
。
目前正在尝试:/c/a/b/path/to/dir/running_dir
修改:还尝试:
git --work-tree=/c/a/b/path/to/dir/running_dir checkout -f
并获得:fatal: this operation must be run in a work tree
答案 0 :(得分:1)
添加绝对路径无效 - 无论我尝试了什么。通过提供--work-tree
的相对路径来轻松修复
答案 1 :(得分:0)
在N:\path\to\dir\running_dir
中运行bash-shell,其中执行pwd
。
此命令的输出将为path,为bash翻译