1. 倉庫遷移並保留原有的提交記錄
應用場景
原有需求在 A 存儲庫地址進行開發,現在新建了一個 B 存儲庫,要求將 A 的代碼和提交記錄一起轉移到 B
解決方案
1. git clone A // 拉取A倉庫的代碼到本地
2. cd AA(文件夾名稱) // 進入代碼倉庫
3. git branch -r // 查看遠程存儲庫的根節點名稱(一般都是origin)
4. git remote set-url origin B // 將本地的遠程倉庫的地址設置為B
5. git push --mirror // 將已經修改遠程倉庫地址的代碼,以鏡像的方式推到遠程B
6. done 此時原有的A本地的代碼倉庫已經變成了B的本地代碼倉庫,以后提交會直接提交至B
2. 將本地代碼的修改同時提交到多個倉庫
應用場景
在前一個場景的基礎上,有可能需要保留原有的倉庫(作為備用倉庫),本地在使用 git push
時,要求同時提交到兩個倉庫
解決方案
打開 .git/config
文件,在原有的 url
下面添加需要推送的倉庫地址
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = A倉庫地址
url = B倉庫地址(新增)
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[branch "xxx分支"]
remote = origin
merge = refs/heads/xxx分支