如何找出尚未推送到另一个存储库的工作。换句话说; 如果我要删除该存储库,我会永久丢失什么?
目前我使用以下 3 行,但我想知道这是否是一个完整的封面以及它是否是一种理智的方法:
git status --short
git log --branches --not --remotes --simplify-by-decoration --decorate --oneline
git stash list
更新:似乎没有检查子模块。有没有办法递归地包含子模块?
如何找出尚未推送到另一个存储库的工作。换句话说; 如果我要删除该存储库,我会永久丢失什么?
目前我使用以下 3 行,但我想知道这是否是一个完整的封面以及它是否是一种理智的方法:
git status --short
git log --branches --not --remotes --simplify-by-decoration --decorate --oneline
git stash list
更新:似乎没有检查子模块。有没有办法递归地包含子模块?
似乎没有检查子模块。有没有办法递归地包含子模块?
不容易,因为每个子模块都可以有自己的历史、分支集和上游 repo('origin' 甚至另一个名称)
如“包括/交错子模块提交的 Git 历史记录”中所述,git log --submodules
仅指示父存储库当前引用的 SHA1。
这给您留下了一个递归命令,例如:
git submodule foreach git log
你可能喜欢类似的东西git show-branch --color=always -a --more=15
?
是您的*
本地存储库,+
表示其他存储库。如果 repo 中存在评论,*
/+
将表明它存在于那里。
您的master
分支中存在但不存在的origin/master
内容尚未推送。