我想在4天前恢复特定作者的所有提交。我该怎么做?
要获得所有sha1(带有一点噪音),我可以使用它:
git log --author=Mohsen --pretty=one --since=4.days
答案 0 :(得分:10)
您必须将format:%H
提供给git log
并使用循环:
for sha in `git log --pretty=format:%H --author=Mohsen --since=4.days`; do
git revert --no-edit $sha
done
这将为每个恢复创建一个提交。禁止--no-edit
选项以交互方式修改每个恢复的提交消息。
或者,如果你想做一个大的还原提交:
for sha in `git log --pretty=format:%H`; do sharange="$sharange $sha"; done
git revert $sharange --no-commit
git commit -m "reverted commits $sharange"