美文网首页
Git 分支管理

Git 分支管理

作者: jun0718 | 来源:发表于2019-12-31 18:58 被阅读0次

为什么要分支管理

一直认为Git是很强大的利器,不仅仅是代码开发,平时编辑自己的文档,也可以尝试用Git来维护。今天我们来说说分支管理为什么这么受欢迎?

  • 大家同时修改一个项目的代码,彼此会担心代码被覆盖么?
  • 想过刚提交的代码会导致线上环境崩溃么?

上述场景任何一个问题产生都很麻烦。那Git是怎么做的呢?一个Git项目只会有一个Master时间线,在这条时间线基础之上可以任意创建属于自己的分支,不过需要遵循以下两个原则:

  • 所有功能代码修改都应该在自己的分支
  • 分支代码需要Merge到Master

因为代码开发都在自己的分支,所以开发不同的代码块不会有冲突,互相覆盖代码就更不存在了;当功能开发完成后,Merge到Master之前还需要代码Review,一方面保证分支代码是合乎逻辑的,另一方面新提交的代码和Master分支代码不会有冲突;如此一来,线上环境的代码会与Maser一致,只要对合并到Master的代码认真检查,线上环境就不会有问题。在我们开始实践操作之前,有一些概念需要澄清一下:

  • Master分支 初始化代码仓库的时候自动生成Master,代码开发需要Check out到自己的分支,随着分支代码Merge到Master,Master代码会逐渐增加。
  • HEAD 理解为一个指针,永远指向当前操作分支,意味着当切换到新的分支后,HEAD会指向新的分支。

如果想对Git流程有更深的理解,结合图形会更有趣。

常用操作

  • 新建分支

当有新功能需求的时候,需要更新仓库最新的代码进行开发,建议每开发一个新功能点,新建单独的分支。

$ git branch //查看当前分支,可以看到当前处于Master分支
> * master
$ git branch test //新建名称为test的分支
> git checkout test // 切换到test分支
> Switched to branch 'test'
$ git branch // 再次查看分支状态
  master
* test

上述的新建分支分为两句操作,也可以用下面这一句来完成:

$ git checkout -b test
  • 修改文件

比如我尝试在新建的test分支上添加了一个文件。

$ touch testFile //新建一个testFile的文件
testfile内容
如果此时你切换到Master分支,会发现并不存在这个文件,这是因为当前分支操作在test分支上。
// 将文件提交到test分支
$ git add testfile 
$ git commit -m 'Add test file by test branch'
  • 合并操作

至此为止,合并代码是最后一个步骤,会将每个人做的变更合并到Master这条时间线上。

$ git merge test //合并指定分支当当前操作分支
  • 删除分支

当功能开发完成后,需要删除功能分支。

$ git branch -d test //删除test分支

团队开发

项目开发中,大家需要共用一个远程仓库,比如常用的Github,这个代码托管平台可以方便开发人员及时更新最新代码,除此以外,Github还支持Code Review,以保证代码的质量。下面列一下Github项目操作与本地项目操作的区别:

  • 当克隆远程项目后,执行git remote -v可以看到远程仓库信息,如果只是本地项目不返回任何信息。针对这一点,可以参考Github配置SSH Key
  • 与Github进行交互,会常常用到以下命令:
$ git clone RepoUrl //克隆项目
$ git pull  //将最新的代码拉取并合并
$ git fetch origin branch_name // 拉取最新远程分支代码
$ git push origin branch_name //将本地分支内容提交到远程
$ git branch --set-upstream branch-name origin/branch_name //建立本地分支与远程分支的关联
$ git push -d origin branch_name // 删除远程分支

初学者在使用Github的时候,难免会遇到各种异常,希望这篇文章能够帮助到您。强烈推荐大家参考官方文档

相关文章

  • git常用命令

    分支管理 git 切换分支 git 查看远程分支 git 查看本地分支 git 创建本地分支 git 删除本地分支...

  • Git命令整理

    Git命令 ———————————————— git配置: git基本步骤: git分支管理: 创建分支命令: 切...

  • GIT分支管理

    GIT 分支管理 参考:在阿里,我们如何管理代码分支?GitHub Flow & Git Flow 基于Git...

  • git常用操作

    Basic Operation 分支管理切换分支git checkout git checkout -b #...

  • git提交代码规范管理

    GIT分支管理 git远程分支主要包括:master develop fixbugmaster:整个项目主分支,...

  • 2021-11-30

    一、分支管理 1、创建分支 git branch 2、查看分支 git branch...

  • git分支仓库管理

    git分支和标签管理 创建分支 git branch banchName git checkout -b bra...

  • git分支管理与使用规范

    git分支管理与使用规范 分支管理 flow git flow github flow gitlab flow f...

  • git 创建分支提交远程分支

    Git创建与管理远程分支 1.创建本地分支 git branch 分支名,例如:git branch 2.0.1....

  • 2016-06-24 阅读整理

    Git Git 基础命令Git 分支管理Git 分支合并Git 公钥提交Git 常用技巧Git 设置别名 Andr...

网友评论

      本文标题:Git 分支管理

      本文链接:https://www.haomeiwen.com/subject/ulzdpctx.html