我正在用git做一些实验。在我的分支上我做了
git filter-branch --tree-filter "find . -name '*.java' -exec sed -i -e \ 's/stringToReplace/replacement/g' {} \;" 777b7d777c7777777dc16a8a939a8cdbabc28086..HEAD
这是重写历史。我没有推动改变。现在我想知道如何重置那个东西?我想回滚那个重写。最简单的方法是什么?非常感谢。
答案 0 :(得分:2)
当您运行git rebase
时,它会将您的分支的原始提交ID存储在.git/refs/original/refs/heads/<branchname>
中。如果要撤消您的rebase,您可以运行:
git reset --hard original/refs/heads/master
这假设您在master
分支机构;如果没有,请在heads/
之后适当更改分支名称。
或者,如果您只想将本地存储库重置为上游存储库的状态,则可以:
git reset --hard origin/master
这会将您的本地分支重置为名为master
的遥控器上的origin
分支。