【发布时间】:2021-04-30 10:49:56
【问题描述】:
对不起,如果在其他地方回答了这个问题。我看了几个帖子,但都无济于事:(
简单的问题。 我们有一个远程主分支。开发人员已对该远程主分支提交了多项更改。我需要将这些应用到本地分支(实际上是 QA 服务器;这里没有开发人员),但在此之前,我希望 git 告诉我哪些提交正在等待处理。
我已经尝试了几种“git diff”的组合,使用“git branch -a”的结果,但没有任何结果。总是空的。
$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/respaldo
$
$ git diff HEAD master
$ git diff HEAD origin/master
$ git diff master origin/master
$ git diff master remotes/origin/master
$ git log origin/master..HEAD
$ git diff origin/master..HEAD
$
我做错了什么?
非常感谢!
【问题讨论】:
-
你先抓取了吗?
-
没有。我还不想做任何改变。我知道“获取”会在本地改变一些东西......对吗?是否有任何“只读”方式来说明这一点?
-
请记住,仅仅因为您尝试与
origin/master进行比较并不意味着它实际上与 git 服务器上的远程分支进行比较。它只检查远程分支的本地副本。所以一定要先获取 -
fetch 不会改变任何东西,除了获取新的提交
-
在 Git 中没有 pending 提交这样的东西。您必须运行
git fetch才能获得实际的提交。提交后,您可以检查它们。在那之前,您没有它们,也无法检查它们。在您的存储库中进行提交不会影响您自己的分支和签出:它只是将提交添加到存储库数据库,以便您可以访问它们。
标签: git git-branch git-commit git-diff git-log