Git-Filter分支命令删除某些日期后的提交

时间:2012-02-01 16:58:20

标签: git git-filter-branch

我被要求在我公司项目的某个日期之后删除提交。

我已经阅读了git filter-branch手册页,我很困惑如何在一个存储库中运行一个命令,该命令会删除某个日期之后的所有提交历史记录。我在我的本地机器W7上克隆了一个存储库的副本(64位)运行Cygwin我想在远程服务器本身复制项目之前测试命令。

-Thanks

苏尔曼

1 个答案:

答案 0 :(得分:1)

您无需使用filter-branch。您只需重置对历史记录中满足条件的最新提交的引用即可。对于每个参考做

git push . -f <someearlier commit>:branch-name

然后用

更新中央仓库
git push -f

或者如果您没有跟踪分支,请指定每个分支:

git push -f origin branch-name

或使用

自动化
git branch -r | sed ... # etc, etc