将Git回购从多个时间戳导出到新的时间戳目录?

将Git回购从多个时间戳导出到新的时间戳目录?,git,Git,我记不起哪个提交是特定阶段:现在我需要将所有提交导出到不同的目录以测试它们。如何将具有不同时间戳的所有回购导出到新目录 我想通过使用Git UI来解决这个问题,而不是检查每个提交 例如,使用SourceTree,您可以单击每个提交(它是图中的一个节点),立即查看到该节点的增量和/或该节点上的代码状态,而无需检查整个提交。我认为,通过这种方式,如果你知道你在寻找什么,你会很快找到你正在寻找的提交 如果您需要实际构建和测试每个提交,这对您来说不是一个有用的建议(我将尝试单独解决这个问题)。我还没有找

我记不起哪个提交是特定阶段:现在我需要将所有提交导出到不同的目录以测试它们。如何将具有不同时间戳的所有回购导出到新目录


我想通过使用Git UI来解决这个问题,而不是检查每个提交

例如,使用SourceTree,您可以单击每个提交(它是图中的一个节点),立即查看到该节点的增量和/或该节点上的代码状态,而无需检查整个提交。我认为,通过这种方式,如果你知道你在寻找什么,你会很快找到你正在寻找的提交


如果您需要实际构建和测试每个提交,这对您来说不是一个有用的建议(我将尝试单独解决这个问题)。

我还没有找到一个有效的解决方案,但下面是Freenode Git的一些建议。也许最简单的方法是
git stash
并在每个命令后测试文件

用于在最近十次提交中查找错误(需要正确的错误处理)

获取提交哈希的Git日志

git log --pretty=format:%H  HEAD~10..HEAD | while read i; do git checkout $i; ./test.sh; done

用于导出(手工工作,不确定是否导出所有内容)

我想现在说:给你的提交一个好的评论吧!;)@GreenAsJade事实上,我非常确定正确的承诺是
2014-01-16 02:59
,但在每次承诺后快速运行回购协议会很好。好的答案取决于具体情况。为什么需要将提交导出到不同的目录中?你想做什么类型的测试?我使用tig进行测试,但现在我想运行每个提交,而不必再次阅读所有内容,对我来说,最快的方法就是运行回购的特定阶段,看看它是如何工作的,而不必阅读所有内容。基本上我也可以问:有没有什么简单的方法可以运行带有特定时间戳的git回购?
git log --pretty=format:%H  HEAD~10..HEAD | while read i; do git checkout $i; ./test.sh; done