git 本地分支与远程分支

本文提供了一次对廖雪峰Git教程的深入解读,着重介绍了如何查看远程与本地分支、创建分支、推送分支至远程仓库、删除分支等关键操作。详细解释了`git branch`, `git checkout`, `git push`与`git branch -d`的用法,并阐述了远程仓库指针的概念。此外,文章还解析了`remotes/origin/HEAD->origin/master`这一特定输出项的含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0. 背景

最近看到了廖雪峰博客的git教程,内容详实生动,安利一下。正好也看到了分支的git操作《git 查看远程分支、本地分支、创建分支、把分支推到远程repository、删除本地分支》,分享同时修改了一些排版和备注说明。


1. 分支的git操作

     a) 查看远程分支

$ git branch -a
* br-2.1.2.2
  master
  remotes/origin/HEAD -> origin/master
  remotes/origin/br-2.1.2.1
  remotes/origin/br-2.1.2.2
  remotes/origin/br-2.1.3
  remotes/origin/master

     

     b) 查看本地分支

$ git branch
* br-2.1.2.2
  master<span style="color: rgb(51, 51, 51); line-height: 26px;"><span style="color: rgb(51, 51, 51); line-height: 26px;"><span style="color: rgb(51, 51, 51); line-height: 26px;">
</span></span></span>

    

     c) 创建分支

$ git branch test

$ git branch
* br-2.1.2.2
  master
  test

‘’‘若把本地分支推到远程分支,使用命令 git push origin local_branch:remote_branch
这个操作,local_branch必须为你本地存在的分支,remote_branch为远程分支,如果remote_branch不存在则会自动创建分支。

类似,git push origin :remote_branch,local_branch留空的话则是删除远程remote_branch分支。 ’‘’

例如,把本地的test分支推送到远程分支

$ git push origin test


     d) 切换分支

$ git branch  
* br-2.1.2.2  
  master  
  test  
  
$ git checkout test  
Switched to branch 'test'  

$ git branch  
  br-2.1.2.2  
  master  
 * test 


      e) 删除本地分支   git branch -d local_branch

$ git checkout br-2.1.2.2
Switched to branch 'br-2.1.2.2'

$ git br
* br-2.1.2.2
  master
  test

$ git br -d test
Deleted branch test (was 17d28d9).

$ git br
* br-2.1.2.2
  master


     f) 查看本地和远程分支  -a。前面带*号的代表你当前工作目录所处的分支

$ git branch -a
  br-2.1.2.2
  master
* test
  remotes/origin/HEAD -> origin/master
  remotes/origin/br-2.1.2.1
  remotes/origin/br-2.1.2.2
  remotes/origin/br-2.1.3
  remotes/origin/master
其中第5行:

remotes/origin/HEAD -> origin/master #啥意思呢?

 

”在clone完成之后,Git 会自动为你将此远程仓库命名为origin(origin只相当于一个别名,运行git remote –v或者查看.git/config可以看到origin的含义),并下载其中所有的数据,建立一个指向它的master 分支的指针,我们用(远程仓库名)/(分支名) 这样的形式表示远程分支,所以origin/master指向的是一个remote branch(从那个branch我们clone数据到本地)“

这个是执行 git remote -v 的结果,看出来origin其实就是远程的git地址的一个别名。

$ git remote  -v
origin  git@gitlab.alibaba-inc.com:middleware/jingwei.git (fetch)
origin  git@gitlab.alibaba-inc.com:middleware/jingwei.git (push)

      g) 删除远程版本

git push origin :br-1.0.0





回答: 在Git中,要将本地分支远程分支进行关联,有几种方法可以实现。一种方法是使用git push命令的--set-upstream参数,可以在推送本地分支远程分支的同时进行关联。例如,使用以下命令将本地分支newbranch推送到远程分支origin/branch并进行关联:git push --set-upstream origin newbranch:origin/branch。\[1\] 另一种方法是在本地创建分支远程分支进行关联。如果远程分支已经存在,可以使用以下命令进行关联: 1. 先将远程分支拉取到本地git pull origin dev。\[2\] 2. 然后在本地创建分支之关联,有两种方法: - 方法1:使用git checkout命令创建并切换到新分支git checkout -b dev origin/dev。\[2\] - 方法2:使用git checkout命令创建新分支之关联:git checkout -b dev --track origin/dev(或简写为git checkout --track origin/dev)。\[2\] 通过以上方法,你可以将本地分支远程分支进行关联,以便进行推送拉取操作。 #### 引用[.reference_title] - *1* *3* [Git 本地分支远程分支的关联](https://blog.youkuaiyun.com/Lakers2015/article/details/128388775)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [git如何将本地分支远程分支进行关联](https://blog.youkuaiyun.com/JSN___/article/details/122056053)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值