0


git 如何切换到远程分支上

场景:

​ 一般clone项目时,都是默认clone的master分支,但是开发肯定是在各种feature分支上开发,远程仓库上多个featrue分支,我们如何以远程的featrue分支作为起点,新建分支,并且跟踪到这个featrue分支呢?

直接使用命令

简洁版

  • branch
//直接以origin/featrue/a为起点创建本地分支,但不切换工作空间到新分支
//--track:建立跟踪,可以省略
git branch --track featrue/a origin/featrue/a
  • checkout
//直接以origin/featrue/a为起点创建本地分支,并切换工作空间到新分支
//-b:切换到新分支
//--track:建立跟踪,可以省略
git checkout -b --track  featrue/a  origin/featrue/a

啰嗦版,建议不看

  • branch
1.同事在远程仓库新增了分支 featrue/a

//更新下分支
2.git pull 或者 git remote update

//如果我们直接使用git branch -a ,会发现并没有featrue/a,如果使用Idea的话,右下角的分支列表也没有新的分支,所以要先更新一下,可以使用git pull 或者 git remote update
3.git branch -a

//以远程仓库origin的featrue/a分支为起点,新建本地分支featrue/a,并跟踪
//--track:建立跟踪,是默认值,可以省略
//featrue/a:是我们本地的分支名字,自定义,一般和远程分支名同名最佳
//origin/featrue/a:
//origin:远程仓库的名称(如果你没有起别的名字,一般就是origin)
//featrue/a:非自定义,远程分支的名字
4.git branch --track featrue/a origin/featrue/a

//发现本地有featrue/a 分支了,新建本地分支成功
5.git branch -a

//试试git pull,成功,说明跟踪远程分支也成功了
6.git pull
//切换到新分支
7.git checkout featrue/a
  • cheackout
不多解释了,和branch的区别就是使用checkout会直接切换到新分支

使用IDEA

使用idea有两种方式,其实和命令一样

一:直接checkout

直接创建并切换(用的最多,最简单)

image-20220529010334395

直接选择要切换的远程分支,点击checkout

就会弹出

Checked out new branch g from origin/g

不多解释了,和上面的命令一样

二:先创建本地分支

image-20220529010820028

New Branch from Selected From origin/g

选择 origin/g 为新分支的来源!

image-20220529011028201

上面只是创建,没有跟踪

image-20220529011149202

可以发现这里是空白的,没有建立跟踪

或者使用命令

//查看分支的跟踪关系
git branch -vv

使用命令建立跟踪

$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1)for details.

    git pull <remote><branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=<remote>/<branch> g

发现没有建立跟踪,那按照它的提示来就行了

git branch --set-upstream-to=origin/g 

在试试 git pull,成功了

$ git pull
Already up to date.

示来就行了

git branch --set-upstream-to=origin/g 

在试试 git pull,成功了

$ git pull
Already up to date.
标签: git github

本文转载自: https://blog.csdn.net/weixin_46471601/article/details/125026254
版权归原作者 nsnsttn 所有, 如有侵权,请联系我们删除。

“git 如何切换到远程分支上”的评论:

还没有评论