【问题标题】:Git - order of "git branch" changed after renaming branchGit - 重命名分支后“git分支”的顺序发生了变化
【发布时间】:2018-01-27 00:14:17
【问题描述】:

出于好奇。

$ git log --oneline
fac0840 (HEAD -> toStringNewFeatureClass) SecondMain - add dupa to toString
c289486 NewFeatureClass toString implementation
ccd48cb (NewFeatureClass) Add NewFeatureClass
fecb127 (master) Remove tmpfile.txt from staging index

我将其中一个分支重命名为 NewFeatureClass,它显示在列表顶部。

$ git branch
  NewFeatureClass
  master
* toStringNewFeatureClass

在重命名用于按创建顺序显示分支的“git branch”命令之前,即 NewFeatureClass 是在 master 之上创建的,toStringNewFeatureClass 在 NewFeatureClass 之上创建的,因此它们按以下顺序显示 masterNewFeatureClass,toStringNewFeatureClass。为什么顺序变了?

谢谢

【问题讨论】:

  • git branch 应该始终按照(面向计算机的)字母顺序对本地分支名称进行默​​认排序(这里所有大写字母都排在所有小写字母之前;请参阅asciitable.com)。所以你为git branch 显示的输出是正确的。您没有以错误的顺序显示之前的任何实际输出,我不确定我是否相信输出曾经是任何其他顺序,特别是因为 Git 通常不知道分支创建顺序。

标签: git branch git-branch


【解决方案1】:

git 分支文档

--sort= 根据给定的键排序。前缀 - 按值的降序排序。您可以使用 --sort= 选项 多次,在这种情况下,最后一个键成为主键。 支持的键与 git for-each-ref 中的键相同。 Sort order defaults to sorting based on the full refname (including refs/... prefix)。这首先列出分离的 HEAD(如果存在),然后 本地分支,最后是远程跟踪分支。

【讨论】:

    猜你喜欢
    • 2016-05-20
    • 2011-10-28
    • 2017-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-18
    • 1970-01-01
    • 2014-09-08
    相关资源
    最近更新 更多