【发布时间】:2011-06-03 07:58:02
【问题描述】:
我编写了自己的自定义合并后钩子,现在我在我的主项目文件夹中添加了一个“钩子”目录(因为 git 不跟踪 .git/hooks 中的更改),在我读到的某个地方我可以创建一个符号从钩子链接到 .git/hooks 所以我不必每次有人更改文件时都将文件从一个文件夹复制到另一个文件夹,所以我尝试了:
ln -s -f hooks/post-merge .git/hooks/post-merge
但它似乎不起作用,任何想法为什么? “ln hooks/post-merge .git/hooks/post-merge” 工作正常,但我猜制作硬链接与 copyin 相同....
【问题讨论】:
-
因为符号链接是相对于其位置进行解析的。
.git/hooks/中指向hooks/post-merge的符号链接被解析为不存在的.git/hooks/hooks/post-merge。你想要ln -s -f ../../hooks/post-merge .git/hooks/post-merge。或者让您的生活更轻松:ln -s -f ../hooks .git/hooks。你的问题与git无关。 -
如果我错了,请纠正我,但仍然必须为每个工作站设置一个符号链接。唯一可以保存的是手动复制它或编写另一个命令将跟踪的挂钩文件复制到
.git/hooks。