【问题标题】:Apply locally committed changes over pulled changes using source tree and git使用源树和 git 将本地提交的更改应用于拉取的更改
【发布时间】:2016-05-05 01:29:59
【问题描述】:

我有一个严重的问题,我将本地更改提交到本地分支。然后,我从远程服务器进行了拉取。然后我解决了冲突。但是,我犯的一个错误是,我不小心接受了远程服务器的更改。所以现在,我所有的变化都消失了。幸运的是,我的更改仍然具有本地提交。

现在,我希望我的本地提交覆盖我拉取的文件。我不确定在 sourcetree 上执行此操作的正确方法是什么。我也可以在 sourcetree 上尝试命令行。我试图在我的本地更改/提交上签出一个分支并将其标记为跟踪远程分支。但这并没有用我提交的文件写完。有人知道如何解决这个问题吗?

谢谢

【问题讨论】:

    标签: git git-merge atlassian-sourcetree git-commit git-checkout


    【解决方案1】:

    如果您只是想吹掉已合并原点的混乱本地分支,您可以。

    git reset --hard goodLocalCommitHash

    这将删除当前分支中goodLocalCommitHash 之上的所有提交。

    【讨论】:

      【解决方案2】:

      如果您没有推送合并提交,并且自合并提交后没有进行任何提交,git reset --hard head~ 将撤消合并,然后您可以再次合并。否则,您最安全的选择可能是 git checkout <commit> <filename>,它将在您的工作目录中覆盖 .然后,只需提交该文件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-07-28
        • 1970-01-01
        • 2017-09-02
        • 2016-02-05
        • 1970-01-01
        • 2016-05-08
        • 2013-06-23
        • 2018-11-22
        相关资源
        最近更新 更多