Git中分支说明

【狂神说Java】Git最新教程通俗易懂_哔哩哔哩_bilibili

Git 分支实际上是指向更改快照的指针。这也是和svn等分支(独立目录)的根本区别之一。

  

其中Master是默认就存在的一个分支,我们叫它主分支。一般很多人会觉得这个Master系统保留的分支应该有其特殊之处,但是实际上Master和其他分支一样没有啥特殊之处,无非他是必须有的分支,这个名称也可以通过git远程仓库修改默认配置,改为阿猫阿狗都没有问题。这个分支也可以删,但是需要特殊设置下。 

Git中分支说明

(1)查看分支命令

git branch

  

查看远程的分支命令

git branch -r

(2)新建分支命令

git branch [分支名称]

新建分支之后,我们可以看到多了一个分支“dev”。

(3)切换分支命令

git checkout [分支名称]

运行命令切换分支之后,我们可以看到此时的分支为“dev”。

  

(4)删除分支命令

git branch -d [分支名称]

运行命令删除分支之后,我们可以看到:

(5)多个分支如果并行执行,就会导致我们的代码不冲突,也就是同时存在多个版本。

解决方案:如果发生冲突,就需要协商选择要保留他的代码还是你的代码?

master主分支应该非常稳定,用来发布新版本,一般情况下不运行在主分支上面工作。工作一般情况下都是在新建的分支上进行工作的,工作完成之后,比如分支代码稳定后可以合并到主分支上。

合并分支命令:

git merge [branch]

Merge与rebase操作的处理方式完全不同,实际上merge比rebase更简单。假设,我们想要想在分支branch-1添加master中的变化(6,8)变化,不用rebase提交历史变为7结束。这种情况下使用merge,而在我们的日常实践中也是merge更常用些。

merge有两种方法:快进和非快进。快进是将分支的指针移动到我们想要合并的分支。快进方法有时候会不能用,比如我们上面的列子中就不能将branch-1移动到master提交,因为这样会导致commit 5和7丢失。当然如果已经rebase分支到主分支顶部的,则可以用将快进方法将branch-1合并到主分支。

当我们想要反映另一个分支的变化时,我们是使用rebase还是merge呢?这个问题没有统一的概念,按照个人喜好以及具体的工作场景:

如果你工作在公共分支中,你和基友们在同时协同工作,那么就使用merge,因为它以时间顺序保留了所有的commit,所有的变更都很清晰并将新变化最后叠加到最后一次提交的顶部。

如果你在你保持在你特有分支中工作,rebase会保持你的线性历史,然后, 当将你的分支合并的时候,可以保持你的master更加清晰,简练。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水w

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值