侧边栏壁纸
博主头像
波哥

大龄程序猿&自由职业者&副业达人
爱好:敲代码、搞副业
12+年开发经验,热衷自动化网络推广!

  • 累计撰写 1,810 篇文章
  • 累计创建 77 个标签
  • 累计收到 13 条评论

目 录CONTENT

文章目录

Git提交代码的正确顺序

波哥
2022-01-05 / 0 评论 / 0 点赞 / 1,133 阅读 / 0 字

Git提交代码的正确顺序

正确顺序:

commit---pull---push

不规范顺序:

pull---commit---push

解释:

先 commit 再 pull 最后再push 的情况就是为了应对多人合并开发的情况。

commit 是为了告诉 git 我这次提交改了哪些东西,不然你只是改了但是 git 不知道你改了,也就无从判断比较;

pull是为了本地 commit 和远程commit 的对比记。git 是按照文件的行数操作进行对比的,如果同时操作了某文件的同一行那么就会产生冲突,git 也会把这个冲突给标记出来,这个时候就需要先把和你冲突的那个人拉过来问问保留谁的代码,然后在 git add && git commit && git pull 这三连,再次 pull 一次是为了防止再你们协商的时候另一个人给又提交了一版东西,如果真发生了那流程重复一遍,通常没有冲突的时候就直接给你合并了,不会把你的代码给覆盖掉

出现代码覆盖或者丢失的情况:比如A B两人的代码pull 时候的版本都是1,A在本地提交了2,3并且推送到远程了,B 进行修改的时候没有commit 操作,他先自己写了东西,然后 git pull 这个时候 B 本地版本已经到3了,B 在本地版本3的时候改了 A 写过的代码,再进行了git commit && git push 那么在远程版本中就是4,而且 A 的代码被覆盖了,所以说所有人都要先 commit 再 pull,不然真的会覆盖代码的。

网络上的建议:

*1.在本地修改与远程代码无冲突的情况下,优先使用:pull->commit->push *

2.在本地修改与远程代码有冲突的情况下,优先使用:commit->pull->push

如何去判断是否有冲突呢?

一般我们在合作开发一个项目的过程中,都会有分工,有时会两个人同时修改一个类,有时整个类都是你自己在开发。

如果都是自己在开发的类,当然优先使用pull->commit->push,为什么我更倾向这种方式呢,因为这样会减少Git没有必要的merge。

如果有冲突的情况下,先pull了会出现什么问题呢?

如果你的判断失误,在本地修改与远程代码有冲突的情况下,先执行了git-pull,即使是这样也不用担心,git会给你一个错误提示,这时候你再去执行commit->pull->push也是没有问题的。

0

评论区