有人推了一个分行testgit push origin test共享仓库的共享仓库。git branch -r如何查看遥控器test我试过了

  • git checkout test,它没有做任何事情
  • git checkout origin/test给给* (no branch)

当前回答

你可以试试

git fetch remote
git checkout --track -b local_branch_name origin/branch_name

git fetch
git checkout -b local_branch_name origin/branch_name

其他回答

如果该分支所在的事物上不是其他的,origin我喜欢做以下工作:

$ git fetch
$ git checkout -b second/next upstream/next

这将检出next分支上upstream远程连接到一个本地分支,该分支被调用second/next。这意味着,如果您已经拥有下一个命名为本地分支的分支,则不会发生冲突。

$ git branch -a
* second/next
  remotes/origin/next
  remotes/upstream/next

有许多替代办法,例如:

  • 备选案文1:

    git fetch && git checkout test
    

    这是最简单的办法

  • 备选案文2:

    git fetch
    git checkout test
    

    是一样的,但分两步走

git fetch --all

将所有远程分支都带回您的本地

git checkout test

将您切换到测试分支

您可以开始跟踪所有远程分支, 使用以下 Bash 脚本 :

#!/bin/bash
git fetch --all
for branch in `git branch -r --format="%(refname:short)" | sed 's/origin\///'`
  do git branch -f --track "$branch" "origin/$branch"
done

以下是单线版本:

git fetch --all; for branch in `git branch -r --format="%(refname:short)" | sed 's/origin\///'`; do git branch --track "$branch" "origin/$branch" ; done ;

git branch -r表示对象名称无效, 因为该分支名称不在 Git 的本地分支列表中。 更新您的本地分支列表来源 :

git remote update

然后再试着检查一下你的远程分支

这对我管用

我相信git fetch拉拉进全部( 全部)远端树枝,这不是最初的海报所要的。