如何将所有更改还原到远程功能分支?

时间:2019-10-24 21:41:56

标签: git bitbucket

因此,我有一个远程功能分支,该分支是几天前从master撤出的。在这段时间内添加了文件。我对功能分支Feature / XYZ的PR进行了几次提交,然后我想对最近的数据进行压榨,所以我遵循了所有正确的压榨步骤,然后突然git不允许我提交到我的远程分支。我收到以下错误:

error: failed to push some refs to 'ssh://git@............git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

所以我上网查找问题所在,并尝试了从git fetch到git pull --rebase到将git分支设置为上游之类的所有操作,似乎没有任何效果。所以我决定我现在不需要压缩提交,只想回到以前,因为我有一些重要的东西需要处理和提交。我的最后一招是将文件保存在我的系统上,然后删除功能分支,然后从头开始并提交另一个PR,但是如果有其他选择,我不想这样做。

当我提交代码行中的更改时,它工作正常。是否有可能忘记我曾经压过更改并回到与远程分支相同的状态和更改?

1 个答案:

答案 0 :(得分:0)

检查与功能分支关联的远程跟踪分支

git switch yourFeatureBranch
# or (older git)
git checkout yourFeatureBranch

git branch -avv

您应该看到:

* yourFeatureBranch  <sha> [origin/yourFeatureBranch]

如果不是:

git push --force -u origin yourFeatureBranch:yourFeatureBranch  

这应该强制更新远程origin/yourFeatureBranch