我在git存储库中创建了文件的文件和符号链接
symfile1 - >文件1
当我改变file1时,我可以看到变化的历史
git log file1,
但是当我这么做时,我不会看到同样的历史
git log symfile1
有没有办法看到真实文件的历史变化,使用git log来表示它的符号链接?
问题仅与历史相关我可以使用symbolik1查看file1的历史记录变化吗?
答案 0 :(得分:2)
没有。符号链接根本没有改变,它仍指向同一目的地。 git不能告诉你,也不应该。如果我看到git标记了符号链接上的更改,那么唯一的链接现在指向不同的文件名。符号链接通常只涉及文件名,而不是文件内容。
也就是说,您可以创建一个执行该操作的短bash脚本。然后你可以为它创建一个git别名-scm.com/book/tr/v2/G。该脚本可以使用标准bash功能来查找链接目标,然后调用所需的正确git命令。
答案 1 :(得分:1)
只是添加..
GIT将符号链接视为与任何文件相同,但它存储与其相关的链接的内容。它没有做的是跟随链接,然后考虑目标。实际上,除了它所包含的链接值之外,它对目标没有任何线索。
当您结帐时,GIT将使用其原始文件路径重新创建该符号链接,但它根本不会考虑目标文件(除非它也在版本控制中,但它将独立于符号链接进行跟踪)。
将其视为桌面上的快捷方式,即文件。把它放到版本控制中,它会跟踪快捷方式,而不是它指向的东西。