问题描述
我的队友使用 VS Code。 很多时候有冲突,他们拉,他们手动修复一些冲突,但似乎有些冲突会自行解决,导致代码出现非常非常大的问题。
这怎么可能?我经常在提交历史记录中看到大量已删除的代码,他们声称他们没有手动删除。
VS Code 中是否有任何设置可能导致这种情况?我真的需要解决这个问题。
解决方法
有时会发生 git 成功合并文本更改而没有冲突的情况,这在词法级别没有意义。
但这不应该是这里的问题,因为您的队友说它没有删除这些行,而您明确(?)说存在冲突。
一旦 git 检测到冲突,它就会启动一个编辑器,这里 VS Code letting the user fixes the conflicts 带有这个 UI:
所以用户必须做一个动作。如果用户在没有做选择的情况下保存(我不记得这在 VSCode 中是否可行),我认为您不会在没有用户在 VSCode 中或在提交合并中专门删除它的情况下删除部分文件。
所以,即使我没有看到文件内容和差异就无法确定,对我来说,这是队友的错误,他在没有注意到的情况下做了一些事情。
更好的解决方案是与他一起重放合并以了解他做了什么,因为您仍然应该在存储库中保留提交。
做:
- 在合适的地方创建一个分支(在你添加提交之前,他也这样做了)
- 推动树枝,他拉它。
- 他在合并之前重置为提交(是否使用引用日志)
- 推送您的新提交
- 他拉你一起解决冲突,你试着去理解。