如何将单个子文件夹恢复到特定日期,而不会使用git影响他人



i有一个git存储库,其中包含整个文件夹结构,我想要o重置其中一个(不是全部(到在特定时间,但我不想影响存储库的任何其他文件/文件夹。

我如何用git实现这一目标?

说我的 root/文件夹中有git存储库,其中包含:

root/
root/FolderA/
root/FolderB/sub1/
root/FolderB/sub2/
root/FolderC/

我想将root/FolderB/及其所有内容还原到2018年1月1日的情况,但我不想更改其他文件夹的内容。

请注意,我通常使用UI Frontent(git扩展(,因此我不经常使用命令行中的git。我一般都不熟练地精通git。

此命令将在2018年1月2日之前从最后一个提交中恢复root/FolderB/的版本:

git checkout $(git rev-list -n 1 --before="2018-01-02 00:00" master)^ -- root/FolderB/

说明:

  • git rev-list -n 1 --before="2018-01-02 00:00" master:在2018年1月2日之前获取最后一个提交的哈希
  • git checkout <commit-hash>^ master -- root/FolderB/:从master分支上的<commit-hash>还原root/FolderB/

最新更新