git 拉取分支切换分支

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
(1)git checkout -b 本地分支名 origin/远程分支名
 
(2)git checkout --track origin/远程分支名 (这种写法是上面的简化版,效果完全一样)
 
(3)git checkout -t origin/远程分支名(这种写法是2的简化版)
 
(4)fetch指定的一个分支:git fetch [repo] [remote_branch_name]:[local_branch_name]
 
    git checkout [local_branch_name] (第一行的:[local_branch_name]如果不写,则本地新建的分支名默认与远程分支名相同)
 
(5)git fetch 获取远程所有分支  (一般用这个)
 
    git branch -r 可以看到所有远程分支,假设有一个分支叫origin/mybranch
 
    git checkout mybranch即可,会在本地新建一个同名分支,并与该远程分支关联
 
   (git checkout origin/mybranch 会进入detached head状态,不会在本地新建分支,不要这样写)

将远程git仓库里的指定分支拉取到本地(本地不存在的分支)

当我想从远程仓库里拉取一条本地不存在的分支时:

git checkout -b 本地分支名 origin/远程分支名

例如: 切换远程分支

git checkout -b  release origin/release-9.4

一、查看本地已有的分支

进入到项目根目录,打开命令行/终端,输入指令,将会显示该项目的本地的全部分支,其中、当前分支的前面有*号。

git branch

二、本地检出一个新的分支并推送到远程仓库

(一).创建本地分支

git checkout -b 新分支名

执行该指令后,会在本地创建一个新分支,该分支是从当前分支上检出的,所以所有文件内容都和当前分支一模一样,这是正常的。创建成功后,将自动切换至新分支上。

 

比如我要创建一个名为dev1的新分支:

此时,再执行git branch查看当前本地所有分支,就会看到两个分支:master与dev1.

(二).推送本地分支到远程仓库

git push --set-upstream origin 分支名

例如,我要把上一步创建的本地dev1推送到远程仓库:

 

三、将远程git仓库里的指定分支拉取到本地(本地不存在的分支)

当我想从远程仓库里拉取一条本地不存在的分支时:

git checkout -b 本地分支名 origin/远程分支名

这个将会自动创建一个新的本地分支,并与指定的远程分支关联起来。

例如远程仓库里有个分支dev2,我本地没有该分支,我要把dev2拉到我本地:

若成功,将会在本地创建新分支dev2,并自动切到dev2上。

 

如果出现提示:

fatal: Cannot update paths and switch to branch 'dev2' at the same time.
Did you intend to checkout 'origin/dev2' which can not be resolved as commit?

表示拉取不成功。我们需要先执行

git fetch

然后再执行

git checkout -b 本地分支名 origin/远程分支名

  

 

posted @   磊~~  阅读(6691)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示