欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > Git进阶之旅:Git 分支管理

Git进阶之旅:Git 分支管理

2025/2/8 3:52:53 来源:https://blog.csdn.net/SOS_suyan/article/details/145406579  浏览:    关键词:Git进阶之旅:Git 分支管理
  1. 定义:        
    1. Git 的默认分支是 master,所有的 commit 会在分支上自动移动。在多次提交之后,master 分支指向最后的 commit  object 提交对象链)
    2. Git  的 master 分支并不特殊,跟其他分支没有区别。之所以每一个仓库都有 master 分支,是因为 git init 命令默认创建它。
    3. 很多人认为 master 分支是稳定、无 bug 的分支。而 develop 往往预示着新功能,不稳定的分支。这和分支策略有关,但本质这两个分支没区别
  2. 分支创建:
    1. git  branch:查看分支
    2. git  branch 分支名:创建该分支
    3. git  checkout  分支名:切换到该分支
    4. git  checkout  -b  分支名:创建并切换到该分支
  3. 分支删除:
    1. git  branch  -d  分支名:删除该分支
    2. git  baranch  -D  分支名:强制删除该分支
    3. 注意:
      1. 不能删除自己所在的分支
      2. 可以删除已经合并或者没有变化的分支
      3. 分支发生变化后只能强制删除
  4. 合并分支:
    1. git  merge  分支名:合并该分支(会出现分支冲突情况)
    2. 在 dev 分支上添加或者修改一个文件名,切换到 master 分支上合并 dev 分支,发现也添加了这个文件
    3. git  merge  dev 文件名  --合并分支后 master 分支上也出现了 dev 修改的内容,此时 dev 分支就允许被删除
  5. 分支的本质:
    1. master 执行的是提交
    2. HEAD 是执行当前的分支,当前在哪个分支就指向哪个分支
    3. 当我们切换分支的时候 HEAD 也会跟着切换
    4. 当进入 .git 文件夹查看 HEAD 的内容的时候,所有的分支不同,文件内部指向就不同
      1. master 分支
      2. dev 分支
    5. Git 的分支与 svn 不同,svn 是整体拷贝一份分支,git 用的是指针
    6. 如果 dev 发生修改提交,dev 的版本就会向后移动
    7. 在 master 分支上合并之后就会出现下面的图
  6. 分支的冲突:
    1. 我们在 dev 分支里面修改 A.txt 文件添加一行后提交
    2. 在 master 分支里面修改 A.txt 文件同时添加一行后提交
    3. 合并后就会出现冲突情况
      1. <<<<<<<<<<HEAD:当前所指向的分支修改的
      2. >>>>>>>>>>dev:dev 分支修改的
    4. 我们需要手动合并,提交该文件
    5. 我们可以通过图形来查看冲突的提交日志:
      1. git  log  --graph

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com