我有一個遠程倉庫的本地鏡像,以及從這個本地鏡像克隆的作業副本。現在我確實獲取了這個作業副本(針對遠程),并希望它能夠在創建鏡像后獲得最近添加的更改。但從傳輸的資料量來看,它似乎再次下載了所有內容的整個歷史記錄:
git.exe fetch --progress -v "origin"
remote: Enumerating objects: 3443117, done.
remote: Counting objects: 100% (94/94), done.
remote: Compressing objects: 100% (60/60), done.
Receiving objects: 57% (1966278/3443117), 30.85 GiB | 5.32 MiB/s
有人可以解釋發生了什么嗎?我想我沒有得到關于鏡像克隆的任何資訊,或者 fetch 如何確定需要下載哪些資料。我應該能夠使用我在本地擁有的任何資料,并且只能從遠程服務器獲取更改,如何?
使用的命令并不太特別:
git clone --mirror --reference c:\WORK\product [email protected]:company/product.git c:\TEST\mirror
cd mirror
git remote update
git clone --progress -v "c:\TEST\mirror" "C:\TEST\working"
然后,我在獲取之前替換了作業副本上的原始 url。
更新:
我的鏡子缺少任何和所有參考配置。它通過接收和決議增量來實作,但隨后以“錯誤:無法獲取來源”結束,沒有更多細節,顯然克隆最終是不完整的。
uj5u.com熱心網友回復:
原來我的鏡子實際上是不完整的。起初我不確定我所看到的對于裸回購是否不正確,并且 git 輸出也沒有說清楚。
不知何故,初始克隆沒有配置任何 refs,隨后的更新和獲取也沒有。
一個干凈的clone沒有--reference解決我的問題。現在 refs 在鏡像上是可見的,并且從中檢出的作業副本只會下載更新的更改。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/469410.html
標籤:混帐
