如何取回我在 Git 上的存储库的所有分支?我尝试了以下方法:
git remote add origin git@github.com:anchetaWern/Zenoir-Online-Classroom.git
git pull git@github.com:anchetaWern/Zenoir-Online-Classroom.git
我在那个存储库中有 3 个分支,但现在我只有主分支。我如何拉回其他2个?
如何取回我在 Git 上的存储库的所有分支?我尝试了以下方法:
git remote add origin git@github.com:anchetaWern/Zenoir-Online-Classroom.git
git pull git@github.com:anchetaWern/Zenoir-Online-Classroom.git
我在那个存储库中有 3 个分支,但现在我只有主分支。我如何拉回其他2个?
添加 remote 后origin
,您不必再次引用该 url。这就是添加遥控器的重点。
你本来可以做的git pull origin
现在,如果您这样做,git branch -a
您将看到远程分支(“丢失”的 2 个)。默认情况下,只有 master 被签出为本地分支。
只需git checkout branch_name
检查它们并设置一个本地分支(每个一次)
当我使用分支时,这是我的典型工作流程:
将分支推送到 github
git push origin newbranch
将 github 上的分支拉到另一台计算机上
git fetch origin
在从 github 拉出的分支上工作
git checkout -b newbranch origin/newbranch
在你执行“git remote add origin the-repo”之后,只需执行一个“git fetch -a origin”,此时所有的分支都在那里并准备好被检出。这是一个典型的工作流程:
$ git init
Initialized empty Git repository in /Users/ebg/test/dev5/.git/
$ git remote add origin /Users/ebg/test/dev1
$ git fetch -a origin
remote: Counting objects: 41, done.
remote: Compressing objects: 100% (30/30), done.
remote: Total 41 (delta 15), reused 0 (delta 0)
Unpacking objects: 100% (41/41), done.
From /Users/ebg/test/dev1
* [new branch] add-on -> origin/add-on
* [new branch] master -> origin/master
$ git checkout add-on
Branch add-on set up to track remote branch add-on from origin.
Switched to a new branch 'add-on'
所以,对于这个例子,分支'add-on'现在在工作目录中,如果需要,'git checkout master'将从远程'origin'获取文件。
要检查远程而不是本地存在的 myBranch - 这对我有用:
git fetch --all
git checkout <BranchName>
另一种解决方案:
我使用了 fetch 和 checkout ...
git fetch <remote> <rbranch>:<lbranch>
git checkout <lbranch>
...远程分支或源引用在哪里,并且是您要跟踪的尚不存在的本地分支或目标引用,并且您可能希望将其命名为与远程分支或源引用相同的名称。