如何在git中切换到不同的远程分支

时间:2011-04-20 21:41:46

标签: git

我有3个本地分支和3个远程分支,并且希望在两个分支上都处于相同的分支上。

on local:

git branch
  A
* B
  master

git branch -r
  origin/A
  origin/B
  origin/master
远程

git branch
  A
  B
* master

我能够提交,推送和拉取B但是我的更新挂钩部署了master而不是B,我想因为远程分支仍然设置为master。我用:

创建了分支B.
git branch B
git checkout B
git push origin B

3 个答案:

答案 0 :(得分:27)

下面是切换和使用git存储库的远程分支的方法。

首先查看所有分支,只需在终端输入以下命令:

git branch --all

然后你会看到本地和远程的所有分支。像这样:

*master
remotes/origin/develop
remotes/origin/master
remotes/origin/web
remotes/origin/app

让我们假装你想切换到remotes/origin/develop分支。输入以下内容:

git checkout remotes/origin/develop

然后再次输入git branch --all以查找:

*(detached from remotes/origin/develop)
master
remotes/origin/develop
remotes/origin/master
remotes/origin/web
remotes/origin/app

然后就这样做:

git checkout -b develop

从现在开始,您正在准确地处理remotes/origin/develop分支。

答案 1 :(得分:4)

据我所知,没有办法用git push更改遥控器的当前分支。推送只会将您的本地更改复制到该存储库中。通常你推送的遥控器应该是--bare,没有工作目录(因此没有“当前分支”)。

答案 2 :(得分:0)

To switch to a remote repo
git branch -r ## list all the branches including the remote branches
git switch <branchname>