git:造成代码冲突并解决冲突

469 阅读2分钟
一 出现的场景:

A开发者修改并添加和提交了代码 B开发者没有pull拉取最新的代码,导致两者都在提交的时候 出现了代码混乱 ,这时候就需要2个程序员 讨论各自的代码需要删除修改的情况

  • 本地自己操作的情况
  • 创2个文件 都拉取了代码 image.png
  • 张1 这开发者 创了新的代码

image.png

  • 然后提交并push 项目中可以看到提交的记录

image.png

image.png

  • 然后张2 也在这个张1的文件内进行修改添加 但是没拉取最新的内容

image.png

  • 在没有拉取最新的内容 会报错 这个信息提示你需要pull 拉取一下

image.png

  • 当你push发现报错了,就需要git pull,输入命令操作之后,就发现出现了merging的提示

image.png

  • 出现这个提示就说明代码冲突了,为什么?

 因为开发者A 和开发者B 同时操作了一个文件

怎么解决?

需要把代码进行人为的合并

  • 在pull之后这两个代码都已经在文件内出现 但是乱了

image.png image.png

  • 把出现的提示符号,删掉,对存在疑议的代码,两个人需要讨论,谁的代码或者共同的部分该删除,或者怎么合并到一起,解决了之后,再把代码重新提交一遍即可。
  • 先将出现的提示符号,删掉,对存在疑议的代码, 删除之后再add 提交 push image.png

image.png

注意:当Apush之后 B没有拉取 就直接添加提交 并push 没有出现merge的提示 是因为 在同文件中修改代码的位置不是同一个导致的,出现冲突的问题:其一就是有一个开发者没有拉取最新数据 其二:就是必须在同一个位置修改代码,空格或是符号都是其不能出现冲突的情况