我关注这篇SO文章,将一个仓库中的本地分支迁移到新仓库中的本地分支(我们从github迁移到gitlab)。
How to merge branches in 2 different repositories?
一路上我遇到了一个问题。我添加了一个指向旧github本地存储库的远程指向:
git remote add github-local ~/myprojectdir/src/.git
当我在新克隆的gitlab存储库中运行git branch -r
时,我希望看到既来自github-local
(我刚刚在上面添加的远程对象)也来自origin
的分支。但是我只看到起源的分支。
上面的SO文章的下一步是创建分支并跟踪github-local/mybranch
:
git checkout -b mybranch --track github-local/mybranch
如果我在运行git branch -r
时未在遥控器列表中看到它,我会认为无法做到?
答案 0 :(得分:1)
首先检查您的遥控器是否显示在遥控器列表中。运行git remote -v
。输出应类似于:
github-local ~/myprojectdir/src/.git (fetch)
github-local ~/myprojectdir/src/.git (push)
origin repo_url (fetch)
origin repo_url (push)
如果github-local
出现在远程列表中,则说明您只是缺少了git fetch --all
。
此后,您应该能够按照有问题的发布来跟踪github-local
中的分支。运行:
git checkout -b mybranch --track github-local/mybranch
然后通过运行git branch -vv
验证一切是否符合您的期望。输出应类似于:
mybranch 068512a [github-local/mybranch] commit_message