Git 只回滚一个目录

Git rollback only a directory

这是我最后一次提交的历史:

(most recent)
commit 349aee3, changes in /dir1 and /dir2
commit fe9a5ac, changes in /dir1 and /dir2
commit d88450e, changes in /dir1 and /dir2
commit cdcab96, changes in /dir1 and /dir2

我想回滚 dir1 以提交 cdcab96,保留其他目录,包括 /dir2 当前状态(提交 349aee3)。

有办法吗?

git checkout cdcab96 -- /dir1

会成功的。

检查结帐手册页中的相关部分 here