Git commit与pull的先后顺序及说明
整理这个问题的起因
1.前些天一个晚辈问我关于commit与pull的先后顺序问题
2.今天又与同事争论了一番commit与pull的先后顺序问题
我的建议是
1.在本地修改与远程代码无冲突的情况下,优先使用:pull->commit->push
2.在本地修改与远程代码有冲突的情况下,优先使用:commit->pull->push
我们怎么去确定是否有冲突呢?
一般我们在合作开发一个项目的过程中,都会有分工,有时会两个人同时修改一个类,有时整个类都是你自己在开发。
如果都是自己在开发的类,当然优先使用pull->commit->push,为什么我更倾向这种方式呢,因为这样会减少Git没有必要的merge。
如果有冲突的情况下,先pull了会出现什么问题呢?
如果你的判断失误,在本地修改与远程代码有冲突的情况下,先执行了git-pull,即使是这样也不用担心,git会给你一个错误提示,这时候你再去执行commit->pull->push也是没有问题的。
我们可以看一下
下面这个git提交记录的截图:

图中,
我们可以看到四次merge的提交,实际上这四次都是没有冲突的merge,这是commit->pull->push中,git自动生成的merge。
如果这里我们采用pull->commit->push呈现出来的就会是一条没有merge、没有多余commit的一条完美分支。
git-pull(https://git-scm.com/docs/git-pull)
Incorporates changes from a remote repository into the current branch.
In its default mode, git pull is shorthand for git fetch followed by git merge FETCH_HEAD.
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Websocket直播间聊天室教程 GoEasy快速实现聊天室
这篇文章主要介绍了Websocket直播间聊天室教程 GoEasy快速实现聊天室,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-05-05
idea中的project、module、artifact的具体使用
本文主要介绍了idea中的project、module、artifact的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2022-02-02


最新评论