问题描述
我正在做一个项目,以前曾经合并过,但是这个很混乱。
这是我的工作方式:
这是我的问题,如您所见,红线表示合并包含600多个提交(实际上是我的所有提交)
我尝试了合并和重新设置基准,每次它想要推送600次提交时,
我还使用了 修补程序 中的cherry-pick
手动恢复了丢失的提交。
自从我从事这个项目以来已经有一段时间了,也许我错过了一些东西...
编辑1:
编辑2:
这是我的git日志的一部分,develop
到hotfix
的最后一次成功合并是0ba9488
(请注意,如果我合并到master,则发生相同的问题,而不是{{ 1}})
testing
解决方法
使用help of Prasanna,我发现 Git LFS 是我的问题,然后我挖了 reflog ,发现我已经使用过:
git filter-branch --tree-filter 'rm -rf db/src/scripts/gamedata/gamedata*' HEAD
经过一些搜索,我发现可以Undo git filter-branch。
所以,我只需要做:
-
git reset --hard refs/original/refs/heads/master
-
git cherry-pick <commit-id>
-
git push --force
一切正常,谢谢!