【问题标题】:Convenient way to see what's new in remote repositories?查看远程存储库中新功能的便捷方式?
【发布时间】:2012-04-28 08:32:51
【问题描述】:

在 Git 中,我希望能够一目了然地查看我的存储库和工作目录是否已过时。我经常犯的错误是只运行“git status”——但这根本不做任何远程通信。或者,我会这样做:

git fetch --all
git status

但这并没有显示其他分支上的活动。

什么是获取信息的好方法,例如:

  1. 任何远程存储库中是否有此分支的更新?
  2. 是否有任何父分支的更新?
  3. 是否有任何新的分支 - 由谁创建,等等。

【问题讨论】:

    标签: git git-remote git-status


    【解决方案1】:

    您无法获得“谁是谁”,因为分支创建实际上并未记录在任何地方。 (您可以找到谁拥有给定分支上的最新提交,但是,例如,如果该分支是作为另一个分支的同义词创建的,则提交通常与“谁创建它”无关。例如,如果我这样做 @ 987654321@ 那么我刚刚在遥控器上创建的分支的最近一次提交与master 的最近一次提交相同,这不一定是“我的”。)

    git fetch --all 的输出默认显示活动。例如:

    $ git fetch --all
    Fetching origin
    Fetching rohan
    From [redacted]
       55f37f2..dc439fc  master     -> rohan/master
    

    这表示我刚刚根据我从名为“rohan”的遥控器带来的东西更新了我对 rohan/master 的想法。 origin/* 中没有任何更新。

    【讨论】:

      【解决方案2】:

      我建议使用gitk --all。这将启动一个显示所有本地和远程分支的图形界面。在控制台模式下,我使用以下 git 别名:

      graph = log --graph --all --decorate --oneline
      

      但请注意,工作目录不要与分支混淆...我刚才所说的对于查看分支来说是正确的,但是工作目录中的更改(因此,未提交的内容)是完全不同的,并由 @987654323 显示@如你所说。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-03
        • 2013-03-19
        • 1970-01-01
        • 1970-01-01
        • 2013-04-06
        • 2017-12-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多