Git提交流程: 1. Menu remote > (拉取)fetch 2. 重新扫描(rescan) 3. 缓存改动(stage change) 4. 写注释后提交(commit) 5. Menu remote > 本地合并> 选择HEAD 6. 如果出现冲突, 手动解决冲突,这时文件会修改, 菜单(commit)> 缓存为提交
如果没有冲突,直接上传就可以,整个流程结束 7. 提交(commit)[说明:注释此时是自动生成的解决冲突的信息] 8. 上传(upload)
commit是提交到到本地仓库.
缓存改动是将要提交到本地仓库的文件. 比如你的项目,你修改了三个文件分别是A,B,C, 缓存改动,可以全选, 也可以只选择某一个进行进行提交.
upload 上传是把本地仓库提交到git仓库服务器.
如果没有出现冲突,直接就可以上传到服务器. 如果有冲突文件了, 需要把所有的冲突文件解决后,再上传.
解决冲突有四种方法:
1, 使用我的版本解决冲突
2, 使用他人版本解决冲突
3, 两者合并解决冲突
4, 使用比较工具,看情况解决冲突.
说明: 需要确定当前冲突的文件到底和谁冲突了, 需要商量着解决. 本地有冲突未解决是提交不上去的.
=============
情景分析:
不熟悉git的人,喜欢操作方式是喜欢把冲突的文件删了,再重新拉取,以远程仓库版本为准.
思想是好的, 但是方式不对, 应该是解决冲突时以为他人版本.
如果真的这么做了, 直接删了, 确实解决冲突了, 但是当你上传到服务器的时候, 这个文件也就删了.
于是出现一堆回滚, 重置版本的版本骚操作. 于是出现了git真他妈的垃圾之类的想法...
这是都是由于操作不规范导致的. 出现冲突不要想着删除冲突文件, 而是商量着解决,如果觉得自己没有改什么东西,或者改的东西不重要, 就直接以他人版本解决冲突,
你解决冲突之后,编辑器会自动加注释信息的, 缓存为提交, 上传服务器即可.
出现冲突,一定不要删除冲突文件.
如果出现的冲突文件非常多, 并且觉得自己没有改什么, 或者改的东西很小量, git可以撤销本地修改. 即到上一个版本的状态.
你再次拉取合并的时候百分百是没有冲突的.