Git基本操作_5

分支管理

  • 查看分支

    分支分为两种,一种是本地已经存在的,还有一种是服务器上有,但本地不存在的分支,查看的方式稍有区别。

    • 查看本地分支

      Git 查看分支的命令为 git branch,在不带参数的情况下,默认查看到的是本地分支列表,参考命令如下:

      git branch 
      

      命令执行成功之后,返回的结果如下图所示:

      image-20200331112414389

      在图中只看到一个 master 并且为绿色,说明当前本地的仓库中只有一个分支,绿色则代表当前所处的分支。

    • 查看所有分支

      git branch 中再加入一个 -a 参数,可以理解为 all 的意思,就是查看本地的分支和远程的所有分支,参考命令如下:

      git branch -a 
      

      image-20200331185338134

  • 新建分支

    • 导入远程分支

      把远程分支在本地创建,可以通过 git checkout 分支名 命令进行,这个命令其实是切换分支用的。但当它发现你本地不存在这个分支,会自动找到远程对应的分支然后在本地进行创建,参考命令如下所示:

      git checkout master
      

      在执行前,需要确保这个分支在远程或者本地已经存在,执行结果如下图所示:

      image-20200331185851596

      切换分支成功之后,会提示已经切换分支成功,以及提示当前分支对应远程的分支名。

    • 新建本地分支

      新建一个远程和本地都不存在的分支方式,和切换分支区别不大,只需要在 git checkout 分支名 中间加入参数 -b 即可。通过这种方式,创建的分支结构和内容会与当前所在的分支一模一样,也就是说,它其实就是复制了当前的分支[相当于执行了$ git branch dev$ git checkout dev],参考命令如下:

      git checkout -b dev
      

      在命令执行之后,参考结果如下图所示:

      image-20200331190231651

      在提示中,同样可以看到会显示切换分支成功,但没有提示对应远程的分支名,因为远程现在还不存在这个分支。所以此时如果使用 git push 是不能直接推送的,需要在第一次推送的时候指定远程分支名,参考命令如下图所示:

      git push --set-upstream origin dev
      
  • 合并分支

    假设我目前有三个分支,分别是:master生产环境、dev开发环境、test bug 修复分支。现在如果在 test 分支中修复了 BUG,需要发布到线上生产服务器上,那么就需要通过合并分支的方式将test分支的代码合并到 master 分支中去。

    • 合并代码

      合并的时候, Git 会对比两个分支代码的差异,当 test 分支处于比较新的状态时候,Git 会将 test 分支的代码和提交记录复制到 master 分支中来,合并代码的参考命令如下:

      git merge test
      

      在没有代码冲突的情况下,执行合并命令的返回结果信息如下图所示:

      image-20200331191107685

    • 查看合并记录

      在代码合并之后,可以通过 git log 方式查看到合并记录。

  • 删除分支

    一般用来修复 BUG 的分支,我们可以把它当做是一个临时分支,当合并到 master 之后,就可以删除掉它了,这样可以减少 Git 仓库的体积。删除分支有两种方式,普通删除和强制删除。

    • 普通删除

      Git 中删除分支的命令为git branch -d 分支名,其中参数-d代表的是普通删除。一般情况下,删除使用普通删除即可。普通删除相对来说比较安全,避免造成数据丢失的情况,参考命令如下:

      git branch -d test
      
    • 强制删除

      在极少数情况下你可能会遇到普通删除无法将分支删除的情况,这个时候你可以将-d替换成-D,这样就可以进行强制删除,参考命令如下:

      git branch -D test
      

猜你喜欢

转载自www.cnblogs.com/grubber/p/12607647.html
今日推荐