通过已知文件夹名称恢复丢失的提交记录

3

我不小心删除了一个分支,我猜测它在reflog列表中,但是检查每个列表项太困难了。我记得在那个分支中创建了一个文件夹,并且有一些文件在里面,因此通过查找所有影响该文件夹的丢失提交,应该可以找到我的分支。所以问题是:如何找到这些提交?

2个回答

2

在reflog命令中,我只需指定路径。如果该路径不在工作目录中,则重要的是在路径之前使用“--”

git reflog -- path/to/the/affected/folder

请注意,这显示的信息与 git log -g path/to/it 相同。 - Josh Lee

0

您可以使用 git lstree 命令来查找分支中的提交信息:

for ID in `git reflog | cut -d' ' -f1` # filter out the commit ID
do
  # show the tree for each commit and grep for the file there
  git ls-tree -r $ID | grep file/name && echo "File is on $ID"
done

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接