这是哪个版本的?将裸源树与存储库进行比较

时间:2013-05-06 07:43:11

标签: git

我有一个源代码树(PHP应用程序),它在某个时间点从git存储库中删除。

我可以在repo中找到匹配的版本(源树中存在的最后一次提交)吗? - 如果对这个导出的,未跟踪的源代码树版本进行了一些小修改,该怎么办?

如果正确定义了术语,则应该可以。是否有工具或内置git实用程序来解决这个问题?

2 个答案:

答案 0 :(得分:3)

可能有更好的解决方案,但您可以将导出的源代码树复制回git工作目录(不提交),然后与for循环中的先前版本进行比较。这是一个关于如何使用bash脚本的示例:

for ((i=1; i<100; i++)); do
  echo $i
  git diff --shortstat HEAD~$i
done

然后查找最小数量的更改。

答案 1 :(得分:0)

我尝试过我的一个项目。我做了

rsync -avz [GIT_REPO_BARE] local-copy

然后我cd进行本地复制,然后运行git log。幸运的是,我有一些提交尚未推送到远程git仓库,所以我推了他们。然后我简单地查找了之前使用git log找到的提交ID的提交。那是你要找的吗?