前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Git学习笔记之分支管理

Git学习笔记之分支管理

作者头像
用户2131907
发布2019-02-27 13:19:20
3010
发布2019-02-27 13:19:20
举报
文章被收录于专栏:程序猿成长计划

本文并非讲解分支管理知识,而是记录了Git分支管理的一些命令使用方法,供使用时参考。

以下使用 <branch_name>表示用户需要替换的内容

创建分支

代码语言:javascript
复制
git checkout -b <branch_name>

上述命令创建一个新的分支 name,并且切换到新的分支,这里的-b参数表示创建并切换

如果仅仅是创建一个新的分支而不切换到新分支,则直接使用git branch <branch_name>命令。

代码语言:javascript
复制
git branch <branch_name>

在分支之间切换

代码语言:javascript
复制
git checkout <branch_name>

查看分支

代码语言:javascript
复制
git branch

上述命令会列出所有的分支,该命令只会列出本地分支,如果希望查看所有分支(包含服务器上的),使用参数-a

代码语言:javascript
复制
git branch -a

远程分支会以红色字体显示。

分支合并

首先切换到主分支

代码语言:javascript
复制
git checkout master

然后执行merge命令合并分支

代码语言:javascript
复制
git merge <branch_name>

这样就把name分支合并到主分支了。

关于 Fast Forward 相关内容,感兴趣可以参考 Git – Fast Forward 和 no fast forward

分支删除

代码语言:javascript
复制
git branch -d <branch_name>

这里的-d (--delete)用于删除已经merge的分支。

如果要丢弃一个没有合并的分支,使用命令git branch -D <branch_name>

对于远程分支的删除,有两种方式:

  • 使用--delete参数 git push origin --delete <branch_name>
  • 推送空分支(相当于删除) git push origin :<branch_name>

修改分支名称

代码语言:javascript
复制
git branch -m <old_name> <new_name>

暂存工作现场

当在一个分支上进行操作,但是修改尚不能提交,这时候需要创建一个新的分支解决更加紧急的任务时,可以将当前分支工作状态暂存起来

代码语言:javascript
复制
git stash

这时可以放心的切换到其它分支进行操作,当完成之后,使用git checkout回到当前分支,使用git stash list命令查看暂存了哪些现场。

代码语言:javascript
复制
$ git stash list
stash@{0}: WIP on master: f32abab 增加composer文件

可以看到这里暂存了一个名为 stash@{0} 的现场。

要恢复现场继续进行操作,有两种方式:

  • 第一种方式是使用git stash apply命令,这种方式恢复之后不会删除stash的内容,需要手动执行git stash drop删除。 git stash apply stash@{0} 删除 stash@{0} : git stash drop stash@{0}
  • 第二种方式是使用 git stash pop,该命令会在恢复的时候将stash内容删除 git stash pop 一般情况下,当手头工作还没有完成的时候,可以使用git stash命令将手头上的工作暂存,切换到其它分支完成紧急任务,再回到该分支,使用git stash pop恢复工作现场。

推送本地分支到远程仓库

使用命令 git push origin <branch_name>

代码语言:javascript
复制
$ git push origin issue-101
Total 0 (delta 0), reused 0 (delta 0)
To https://github.com/mylxsw/FocusPHP.git
 * [new branch]      issue-101 -> issue-101

拉取远程分支到本地开发

从远程仓库clone时,默认情况下只能看到 master 分支,要在分支工作,需要在创建远程origindev分支到本地。

代码语言:javascript
复制
git checkout -b issue-101 origin/issue-101

创建本地分支与远程分支的关联

代码语言:javascript
复制
git branch --set-upstream dev origin/dev

查看分支合并情况

代码语言:javascript
复制
git log --graph --pretty=oneline --abbrev-commit

参考:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-09-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建分支
  • 查看分支
  • 分支合并
  • 分支删除
  • 修改分支名称
  • 暂存工作现场
  • 推送本地分支到远程仓库
  • 拉取远程分支到本地开发
  • 创建本地分支与远程分支的关联
  • 查看分支合并情况
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档