Git实践记录与总结感悟(一)

您所在的位置:网站首页 管理工具课程心得体会总结与反思 Git实践记录与总结感悟(一)

Git实践记录与总结感悟(一)

2024-07-14 23:44| 来源: 网络整理| 查看: 265

问题: 那为什么要先add, 其次在commit,然后在pull,最后再push?如果我pull了,岂不是把自己修改的代码都给覆盖掉了嘛,因为远程没有我改的代码,我pull,岂不是覆盖了我本地改动好的地方了?那我还怎么push? 答: 先add,在commit 再 pull 再 push 的情况就是为了应对多人合并开发的情况: a) add是为了把修改的文件或者新添加的文件,添加到本地仓库中。

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

c) pull是为了本地 commit 和远程commit 的对比记录,git 是按照文件的行数操作进行对比的,如果同时操作了某文件的同一行那么就会产生冲突,git 也会把这个冲突给标记出来,这个时候就需要先把和自己冲突的那同事进行讨论,最终确定保留谁的代码,然后在 git commit && git pull ,再次 pull 是为了防止再自己与冲突同事协商的时候另同事又提交了一版东西,如果真发生了,流程重复一遍即可,通常没有冲突的时候就直接把文件合并了,不会把代码给覆盖掉 。

d)出现代码覆盖或者丢失的情况:比如Alice和Bob两人的代码pull的时候,文件版本都是1,Alic在本地提交了2,3并且推送到远程了,Bob 修改文件完成后没有commit 操作,直接 git pull 这个时候 Bob 本地版本已经到3了。Bob 在本地版本3的时候改了 A 写过的代码,再进行了git commit && git push 那么在远程版本中就是4,而且 A 的代码被覆盖了,所以说都要先 commit 再 pull,最后在push,不然会覆盖代码的。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3