需要在脚本中执行此操作。谢谢。Git:如何检查本地分支是否有被跟踪远程没有的任何提交?
2
A
回答
0
git status
指示当前分支在被跟踪分支后面有多远。你可以在脚本中运行它并解析输出。也可能有一个管道命令,可以更直接地为您提供信息。
0
您可以使用“混帐取”命令,然后,如果你做一个跟踪分支“git的状态”,它应该告诉你,不是推到了提交的数目拉最新的变化信息服务器或当前分支落后多远。
使用取命令在你当地的分支机构将不适用的变化,对于这一点,你必须使用“git的合并产地/ branch_name”来合并。
1
我使用以下命令(作为别名)列出未推送到远程存储库的所有本地提交。
log --oneline --decorate=short --graph --all --branches --not --remotes
这将需要被修改为在脚本中使用,并且有可能是做同样的事情管道命令,但我觉得它有用。
的关键是在过去的几年参数:
--all
包括refs/
所有裁判 - 你可能不希望这样,如果你只希望当前分支的提交。--branches
包括refs/heads
中的所有参考文献 - 保留当前值或明确指定分支来限制提交列表。--not --remotes
包含魔法 - 确保列出的任何提交都不在refs/remotes
中。
编辑>它看起来像git rev-list ...
管道命令也有类似的争论,但我没有测试它知道,如果它的工作原理是相同的。管道命令被推荐用于编写脚本,所以请看看它 - man-page以供参考。
希望这会有所帮助。
1
如果情况是这样的:
/--a--b--c myBranch [local branch]
/
----x <- [closest common ancestor]
\
\--e--f origin/myBranch [tracked remote]
git status
将显示一条消息myBranch..origin/myBranch [ahead 3, behind 2]
-ahead 3
意味着您当地的分行是3犯提前最接近共同祖先,behind 2
意味着远程分支为2个提交在最接近的共同祖先之前git log origin/myBranch..myBranch
将显示关于提交的日志a-b-c
- 它将显示从两个分支的公共祖先一直到012的提交日志git log myBranch..origin/myBranch
将显示日志有关承诺e-f
- 它会显示在日志中提交不等的两个分支的共同祖先高达origin/myBranch
您可以添加任何选项,像这些命令,例如:git log --oneline --decorate origin/myBranch..myBranch
相关问题
- 1. 如何让现有的git分支跟踪远程SVN分支?
- 2. 如何查询本地分支跟踪哪个远程分支?
- 3. 如何检索到远程跟踪分支的意外提交?
- 4. 具有多个本地跟踪分支的远程分支
- 5. Git - 如何跟踪您从本地分支创建的远程分支?
- 6. 如何检查当前分支中是否没有提交?
- 7. 让现有的Git分支跟踪JGit的远程分支?
- 8. Visual studio/GIT:没有跟踪的远程分支
- 9. 如何将git分支转换为远程跟踪的分支?
- 10. Git Bash脚本检查回购是否有任何提交?
- 11. 如何检查一个git仓库是否有任何提交?
- 12. EGIT分支本地与远程跟踪
- 13. GIT:如何删除任何使远程分支跟踪本地分支的配置?
- 14. 如何检出我的远程/跟踪分支的HEAD版本
- 15. Git远程分支提交
- 16. 如何检查没有提交的git仓库跟着我
- 17. Git-跟踪远程分支机构
- 18. Git安装远程跟踪分支
- 19. 在Git中,是否需要远程跟踪分支?
- 20. 如何在没有本地跟踪分支的情况下删除远程分支机构?
- 21. 如何纠正我的本地分支正在跟踪的远程分支?
- 22. 如何使用Git跟踪给定分支的多个远程?
- 23. 如何在本地创建一个跟踪远程分支的分支
- 24. Git:如何在本地获得所有`远程`分支,指向它们各自的'提交',如同远程?
- 25. Git:如何列出有关跟踪远程信息的分支机构?
- 26. Git:本地分支跟踪其他本地分支
- 27. 本地分支丢失远程跟踪分支
- 28. GIT:检查当前分支的命令是否存在于远程跟踪分支中
- 29. 如何更改git子模块跟踪远程分支?
- 30. 如何使用git再次跟踪远程分支
可能是[this]的副本(http://stackoverflow.com/questions/1800783/compare-local-git-branch-with-remote-branch)。 – ajp15243 2013-03-22 01:56:12
['git-wtf'](http://git-wt-commit.rubyforge.org/git-wtf)是一个很酷的方便脚本,它已经做到了。它是用红宝石书写的。你可以尝试反向工程。 – Tuxdude 2013-03-22 02:02:46