为什么可以将符号链接提交到git?

4
我最近在一个git仓库中添加并提交了一个符号链接指向一个文本文件(在外部目录中)。我期望这会将文本文件的内容一并提交。但是,当我将该仓库克隆到第二台机器时,符号链接仍然是符号链接。它现在指向第二台机器上同名但无关的另一个文本文件。我的问题是,为什么和如何使git以这种方式运作?
为什么可以提交实际的链接本身?在什么情况下会有用?
谢谢!

3
以下是相关信息: https://dev59.com/13NA5IYBdhLWcg3wdthdGit如何处理符号链接? - ZbyszekKr
谢谢你的重定向 - 这就是我要找的解释! - T.Lipperz
1个回答

4
简而言之,git将文件(文件、符号链接、目录)添加到源代码控制中。如果符号链接的目标也在源代码控制中或者至少在已知位置,则通常不会出现问题。
如果这与你想要做的不符,我首先会考虑为什么你希望该文件是符号链接,并且仍然在版本控制中。很可能,你会发现你其实并不需要这样做。
关于这个问题已经有很多讨论了,包括一些解释为什么会这样,以及如何解决它的讨论。

4
谢谢,但我没有询问“将符号链接提交到git是否有用?” 我正在寻找关于git操作的解释。 - T.Lipperz
2
好的,我确实说过git将符号链接作为符号链接提交 - 这是你已经发现的。你问为什么会这样。此外,由于某种原因,我的回答部分被截断了...无论如何,我添加了一个链接到另一篇讨论该主题的文章。由于符号链接和git已经在SO上广泛涵盖,所以我就不再赘述了。 - averell

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接