我正在寻找一种实用的方法来查明git存储库是否以任何方式发生了变化(新提交,新分支等)。找到这个问题的答案的目的是在Web存储库查看器中创建一个简单的缓存系统,并进行适当的失效。
有关详情,请参阅:https://github.com/klaussilveira/gitlist/issues/260。先谢谢你们。
答案 0 :(得分:2)
我天真的方法是存储和比较git show-ref
的输出。如果更新分支,则相应的头将在下一个show-ref
处于不同的SHA,如果添加了分支,则它将显示为新条目。同意标签。
这是一个便宜的命令,因此它应该可以在你的20k回购中扩展。
答案 1 :(得分:1)
git remote show <remote-name>
怎么样?你可以得到每个分支的输出:
Remote branch:
master tracked
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git push':
master pushes to master (local out of date)