Git pull缺少变化

时间:2017-02-03 01:40:30

标签: git github version-control bitbucket

我有一个奇怪的问题,即git pull没有完全更新某个文件。

我正在开发一个只有一个遥控器的公司项目。我的本地仓库是远程提前3次提交,同时其他开发人员推送了其他一些提交。我们都在做主人。

所以我的情景是,我隐藏了我的本地更改,删除了最新的更改并注意到了冲突。没问题。

我解决了这个冲突但后来发现解决方案导致代码损坏。我通过Bitbucket检查了遥控器上的源代码,并注意到我的代码中的一个方法根本没有更新。请参阅下面的示例。

本地回购(拉前)

public Object method1() throws Exception {
    return method2();
}

public Object method2() throws Exception {
    return generateSomeObject();
}

远程仓库(重命名第一个方法并抛出不同的异常)

public Object newMethod1() throws SQLException {
    return method2();
}

public Object method2() throws SQLException {
    Object object = null;
    try {
        object = generateSomeObject();
    catch (SomeException e) {}
    return object;
}

这会导致类似的冲突 拉后

<<<<<<< HEAD
public Object method1() throws Exception {
======
public Object newMethod1() throws SQLException {
>>>>>>> 453451432435
    return method2();
}

public Object method2() throws Exception {
    return generateSomeObject();
}

冲突让人感觉很好。但是,我不明白为什么method2没有正确更新。我原以为它也会表现出冲突。因此,此方法的所有更改都没有从遥控器中下拉。

任何人都可以在git中解决这个问题,而不是手动复制遗漏吗?

1 个答案:

答案 0 :(得分:1)

似乎合并被发生的冲突打断了。解决冲突后,您可以再次运行git pull以恢复合并。 git merge --continue也适用于较新的git版本。

有关简历git merge的更多信息,请阅读how-do-i-finish-the-merge-after-resolving-my-merge-conflicts