在悬挂中搜索字符串在Git中提交
下面的怪物非常好地发现了一个包含单词Upload的git存储,这正是我正在寻找的:
git fsck --no-reflog | awk '/dangling commit/ {print $3}' |
while read ref; do if [ "`git show -p $ref|grep -c Upload`" -ne 0 ]; then echo $ref ; fi ; done
有没有更漂亮的版本? 我猜镐应该可以工作,但git log -g
没有看到这个提交。
...但是git log -g
没有看到这个提交
被reflog引用(仍然)的提交被认为是可访问的,而不是悬空的。 因此,运行git log –g
与你想要的是相反的,所以在这里没有意外。
gc.reflogExpire时间范围内的提交可通过reflog进行访问,缺省时间为90天。
有没有更漂亮的版本?
不, git fsck
是访问悬挂提交的正确方法。