2017-05-24 146 views
0

我有一個Linux硬鏈接(ln)指向git中的文件。任何人都知道如果我在git中更新文件會發生什麼?我必須重新建立硬鏈接嗎?Linux硬鏈接(ln)和GIT

+0

nope - 它只是做cd/path/to/file的一個別名,而不是臨時數據的持有者,所以更改不應該影響鏈接。如果你擔心,你可以測試它 - 創建一個test.txt文件,鏈接它,然後編輯,看看會發生什麼 – ThisGuyHasTwoThumbs

+0

謝謝。我會嘗試 – nacho

+0

不用擔心:)希望它有幫助 – ThisGuyHasTwoThumbs

回答

2

當由git完成的更新包括文件的刪除(很容易發生)時,git中的文件與存儲庫外部的硬鏈接之間的連接將不再存在。

換句話說,使用硬鏈接與git不是一個好主意。另外請注意,當你在git倉庫中使用harlink時,git會抱怨它。

+0

爲什麼會git抱怨硬鏈接?我的所有文件都是硬鏈接。 –

+0

Git源代碼中的'git grep st_nlink'指向Git只會在'builtin/worktree.c'中顯示'st_nlink> 1'的一個測試,它正在檢查是否應該修剪工作樹。這意味着Git不會*抱怨*。不過,你是正確的,這樣的鏈接將被切斷。 – torek

+0

非常感謝 – nacho