git的使用大全 git的历史 git的基本操作 GitHub tortoisegit 等 第二部分 分支和冲突

接上一节 这一节说的是分支 开发不可能是只有一个master分支 比如后端可能跟前端协作 最后一起合并代码 或者说分支是把你自己的工作从主线上分离出来 避免影响到主线

master分支一般是放着永远可用的稳定版本 一般再dev分支上开发 不能直接提交到master上 不好

分支创建也是有规范的 一般以  feature-功能模块   来命名  比如有bug的话 那也可以再新建一个分支 feature-功能模块-fix

比如开发用户订单模块  feature-userOrder 也就是从主干版本拷贝一份下来 开发 然后提交到自己的分支

还有命名是 hotfix-xxx 意思是紧急修改一个bug来创建的一个分支


例子 我们先创建一个仓库 然后创建一个文件 并且添加提交到本地仓库

 

好了 现在我们创建分支 右击使用tortoisegit工具来创建一个分支

  然后选从哪个拷贝一份下来 确定即可

同样的 右键使用tortoisegit工具查看分支情况

   可以看到 在master上拷贝了一份


现在可以在文件夹右键看一下 还是提交到master 说明没有把工作区切换到 feature-fire分支上

 

同样的 我们右键使用tortoisegit工具 

 选择这个功能 然后按照提示切换即可 

我们在这个分支下新建一个文件 然后提交到这个分支上就好了

省略了新建文件添加提交的图 看一下日志就好了

  在feature-fire分支上添加了文件 切换到master分支上 

切换回master分支 可以看到文件夹下又变成只有一个文件了

     


假设我们添加了b文件完成了整个功能 然后 合并到master分支

首先我们要切换到master分支上  然后使用tortoisegit工具 选择合并功能

  填写相关信息 选择从哪个分支合并过来即可 

 那么b文件就从feature-fire分支合并过来了 


怎么删除分支呢 还是在版本分支图中 然后点击feature-fire分支 选择删除

   点击删除即可

但是合并分支并不会是一帆风顺的 现在说下怎么去处理分支冲突


举个例子

好的 那现在我们复现一下这个 情况 首先 我们新建两个分支 feature-one feature-two 然后都在b.txt做出修改  写下不同语句 然后先将 feature-one合并到master上 

这是没问题的 然后将 feature-two 合并到master上 这时候就有问题了 但是 实际处理冲突的时候应该和别人交流 假设 这里的解决方式是把两个语句放一起 流程如下

    

  

同样的 在two分支也做这个操作

  

  

此时两个在master上拷贝下来的分支都对master的b文件做了修改 然后我们先把one分支合并到master上 首先切换master

切回master可以看到  b文件未被修改

  

可以看到 合并成功 现在 我们再来合并 two分支

 

可以看到 报错了 我们点击关闭 看一下b文件内容

 变成了这样 这不是我们想要的 因我们想要的是处理两份文件的代码 

我们还是使用tortoisegit工具 来处理冲突

 点击解决冲突

 

 看到冲突文件 双击它

双击它有上述页面 上述页面左边就是要合并的分支 右边就是当前的工作区内容 下面是解决冲突的地方

比如我们把它们改成

然后保存

 标记为解决 

就改成了这样 

然后提交即可

 忽略 

 这就解决了冲突

看一下日志 

好了 


由于这个git的截图等写下来很多 还是分成好几个部分 这个第二部分就说分支和冲突 下一部分说tag 远程仓库等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值