簡體   English   中英

克隆本地git repo,就像我從其遠程克隆一樣

[英]Clone a local git repo as if I had cloned from its remote

我有一個從遠程克隆的本地git存儲庫(例如,github)。 其中的分支具有相關聯的上游,它們從中進行推拉。

我想為此倉庫創建一個新的本地副本,以便可以同時在本地的不同分支上進行開發。

我可以從遠程存儲庫中進行git clone … ,但這將花費一些時間通過緩慢的鏈接。

取而代之的是,我想從本地倉庫中git clone ,但是效果就好像我做了遠程的git clone 因此,新副本中的分支將從遠程拉入和推入。 對於需要遙控器的任何其他操作,它將使用原始遙控器。

我怎樣才能做到這一點? …我應該只使用cp -r repo repo-clone嗎?

如果您實際上不想要新的克隆,而只是簽出多個分支的不同分支的工作樹,則也可以考慮使用“ git worktree”


如果您確實要克隆並節省時間和帶寬以進行下載,則可以像往常一樣從遠程進行克隆,但是您可以添加--reference <local repository>以使用--reference <local repository>的Git對象,而不是從本地存儲庫中下載它們。遠程。 這將使用參考存儲庫中的對象而不復制它們,因此,如果您刪除了仍在新存儲庫中的參考存儲庫中的分支,則某些Git清理可能會刪除第二個克隆中所需的對象。提交在參考資料庫中不再可用。 如果您想花費更多的磁盤空間來解決此問題,請另外使用--dissociate從參考存儲庫中實際復制對象。

您可以從本地倉庫git clone /local/git/repo repo並使用

git remote rename origin old_origin

git remote add origin <PATH>

添加遠程倉庫。 並可能會刪除初始倉庫

git remote remove old_origin

使用git remote -h獲取更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM