我需要将仓库中的所有app.config
文件恢复到一个特定的提交,而不管这些文件位于何处。我知道,git checkout
允许将文件或文件夹恢复到一个特定的提交,但有没有方法可以递归地完成这一操作,而不需要选择所有文件或使用脚本?
我试探着:
$ git checkout <commit> -- App.config
error: pathspec 'App.config' did not match any file(s) known to git
$ git checkout <commit> -- */App.config
error: pathspec '(Folder 1)/App.config' did not match any file(s) known to git
error: pathspec '(Folder 2)/App.config' did not match any file(s) known to git
error: pathspec '(Folder 3)/App.config' did not match any file(s) known to git
error: pathspec '(Folder 4)/App.config' did not match any file(s) known to git
...
这些文件实际上 * 是 * 已知的git,因为如果我进入文件夹并执行以下操作:
git checkout <commit> -- ./App.config
它可以工作,但仅适用于此单个文件。
2条答案
按热度按时间o3imoua41#
通配符可以:
bxpogfeg2#
如果您能够找到选择文件的方法,则可以仅 checkout 这些文件。
我使用引号来防止bash扩展它们。
而且,有时git之外的东西也能给予你一把: