公有文件提交冲突的解决方法

今天有这么一件事情,仓库里有一个文件a,内容是这样的,我把它拉取(pull)到本地。

Today is a good day.

然后呢,这个文件不是我的负责范围,我就一直没管他,在更新其他的文件,随手加了一行注释就撂那了。

Today is a good day.

做完手头的工作,准备向远程推送(push)。
先拉取(pull)一下吧,看有没有什么修改。
结果出错了。。。

Git 冲突:Your local changes would be overwritten by merge. Commit, stash or revert them to proceed.

这是什么情况呢?
打开远程仓库,我才明白是怎么回事。原来是我的好朋友“小明”,在我pull这个文件之后,他又在里面加了一行,提交(commit)推送(push)了。
这可怎么办呢?

git有对修改进行暂存的区域,是一个堆栈结构,如果遇到这样的情况,就可以使用如下命令:

git stash          #压堆栈

然后你就可以使用git pull,这里我们拉取,看看“小明”改了啥。

Today is a good day.

好么,他也加了条注释,然后顺手提交了,尴尬。
其实上面的就是“小明”修改后文件的完整内容,接下来我们把堆栈弹出。

Today is a good day.


这样两行注释都会出现在文件里,你可以根据需要来做相应的修改。也可以使用git diff来查看修改前后的区别,留下你需要的,然后提交推送就好。

你可能感兴趣的:(公有文件提交冲突的解决方法)