GITHUB冲突解决

时间:2012-11-03 15:42:19

标签: git github-for-windows

我是github的新手并开始使用 GITHUB for WINDOWS 选择的私有存储库并与我的同事分享。

现在我们遇到了一个问题,不知道如何解决它。我们试过google而没用。

我和同事同时在同一个档案上工作,他在我面前承诺。我想知道他所做的更改,我想将他的更改与我的本地文件合并,最后想要提交我的版本。 GITHUB可以使用GITHUB for windows吗?我之前用Tortoise SVN做过同样的事情

我打开shell命令提示符并尝试了类似

的内容
  $ git diff

但它只显示差异,并没有建议我将本地版本与分阶段版本合并..

2 个答案:

答案 0 :(得分:19)

如果按sync按钮,您将拉动朋友所做的更改并推送到网上。如果更改未完全合并,则会提示您发生冲突。这会在你的文件中添加冲突行,你必须去解决它们。之后,您只需要提交更改。

冲突的行应该出现在Github for Windows界面中(虽然我不是100%肯定,但实际上我更喜欢通过命令行解决冲突)。

通过命令行,您必须输入命令:

git pull
# If merge conflict, you'll be prompt to resolve them, git will list conflicted files
# Open those files in you editor and resolve conflicts. Line will be marked in the files.
# When all is resolved :
git add -A
git commit
# No need to enter a message, git will automatically fill the message with
# merge conflict specific information
git push

在您的文件中,冲突标记看起来像这样:

<<<<<<<<<<< [sha-1 of the commit]
function() {
==================
function( hey ) {
HEAD>>>>>>>>>>>>>

答案 1 :(得分:1)

就我而言,事实证明我在尝试同步下一个提交之前忽略了同步先前的提交。

无需解决冲突。

我还发现所有差异块都很有趣

<<<<<<<<<<<<<<<<<...
...
======================
...
HEAD>>>>>>>>>>>>>>

实际上已放入您的源代码中。只需在文本编辑器中打开冲突的文件,然后保留/删除所需的分支。