11

我即将合并来自远程分支(非起源)的重大更改,更具体地说,来自给定标签。

那么有两个遥控器:

  1. origin
  2. proposal

在遥控器上,存在一个带有标签proposal的分支名称。ideatagged_idea

我的想法是,我想查看tagged_idea与当前 HEAD 之间的传入更改。我怎样才能做到这一点?

我尝试了类似的东西,git diff .../proposal/tags/tagged_idea但效果不佳。任何的想法?

换句话说,我想看到的是合并的结果,甚至在我的分支中进行之前。就像我做了拉动git pull proposal tags/tagged_idea但没有实际进行更改一样。

4

3 回答 3

13

大多数 git 命令只能在本地工作,尤其是。git diff和之类git merge的东西

您的本地存储库可以有多个远程,但为了处理这些,您必须首先将本地存储库与您的远程同步:

 git fetch --all

虽然这将下载所有变更集,但它不会将它们应用到您的当前分支,除非当前分支正在跟踪其中一个远程。

下载远程变更集和标签后,您可以简单地运行以下命令:

git diff tagged_idea

HEAD...并查看您的 current和 a tag之间的差异tagged_idea,无论后者位于何处。

于 2013-10-29T16:59:22.297 回答
3

git ls-remote --tags proposal |grep tagged_idea用来获取修订散列,然后git diff处理散列。

于 2013-11-08T11:29:07.073 回答
0

如果您只是在寻找命令,请不要使用它,因为此解决方案的主要目的是向您介绍一种解决方案!

为了让生活更轻松 - 我编写了一个脚本git-cheat-sheet,其中包含一些有用的命令,包括以下内容:

./git_commands.sh -diff_tag

于 2018-06-19T16:33:27.543 回答