git 显示未推送的工作

标签 git

我如何找出哪些工作尚未推送到另一个存储库。换句话说;如果我要删除该存储库,我会永久丢失什么?

目前我使用以下 3 行,但我想知道这是否是一个完整的封面以及它是否是一个明智的方法:

git status --short
git log --branches --not --remotes --simplify-by-decoration --decorate --oneline
git stash list

更新:似乎没有检查子模块。有没有办法递归地包含子模块?

最佳答案

it seems that submodules are not checked. Is there a way to include submodules recursively?

不容易,因为每个子模块都可以有自己的历史、分支集和上游 repo('origin' 甚至另一个名称)

如“Git history including/interleave submodule commits”中所述,git log --submodules 将仅指示父存储库当前引用的 SHA1。

这给你留下了一个递归命令,如:

git submodule foreach git log

关于git 显示未推送的工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15134438/

相关文章:

Git 和分支

repo 中的 python-git check out 文件

Git rebase 尝试将更改应用到错误的文件

ruby-on-rails - 我正在尝试使用 Ansible 编写部署规则以克隆存储库

Git 推送,将消息流式传输到客户端

git - IntelliJ 中与 'Default Task' 关联的分支

git - 什么是 merge 请求?

swift - PNChart-swift 不工作

git - 如何切换两个分支的内容?

git - 如何在VSCode中更改用户并链接我的Github帐户?