[英]Git : How to Create local repo with symbolic links to the Git main repo
我想創建一個Git倉庫,其中用戶只能從Git存儲庫中提取文件,並且永遠不會推入它。 由於克隆到遠程倉庫中的數據不需要修改,我想創建到主倉庫的軟鏈接以節省空間(數據將在許多用戶之間重復)。
當我執行Git克隆時,我可以在本地倉庫中創建到遠程倉庫中的文件的軟鏈接嗎?
例如,在git clone <path>/gitrepo .
上有一些變化git clone <path>/gitrepo .
...其中gitrepo
是主目錄,命令應該創建我的本地git倉庫,其符號鏈接指向gitrepo。 應該維護版本控制。 直到我做一個git pull,我的本地回購應該保持,即使主要的gitrepo已經向前移動。 git pull應該重新創建符號鏈接以指向最新的主回購。
我正在尋求用“版本控制的ln -s
”替換ln -s
謝謝,RB
當在本地克隆時,Git會自動執行此操作。 從git clone
的聯機幫助頁:
--local, -l
當要克隆的存儲庫位於本地計算機上時,此標志會繞過正常的“git aware”傳輸機制,並通過制作
HEAD
副本以及對象和refs目錄下的所有內容來克隆存儲庫。.git/objects/directory
下的文件是硬鏈接的,以便在可能的情況下節省空間。 現在,當使用/path/to/repo
語法指定源存儲庫時,這是默認設置,因此它本質上是一個無操作選項。 強制復制而不是硬鏈接(如果你試圖備份你的存儲庫,這可能是合乎需要的),但仍然避免使用通常的“git aware”傳輸機制,可以使用--no-hardlinks
。
另一個有趣的標志可能是-s
:
--shared, -s
當要克隆的存儲庫位於本地計算機上而不是使用硬鏈接時,會自動設置
.git/objects/info/alternates
以與源存儲庫共享對象。 生成的存儲庫在沒有任何自己的對象的情況下開始。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.