为什么这个较旧的git提交会出现在顶部?

为什么这个较旧的git提交会出现在顶部?,git,git-svn,Git,Git Svn,考虑下面的git日志。提交按日期排序。然而,有一个提交明显比其他提交更老,但仍然出现在顶部 commit f9afb9e89918faaff09686ce1df4a36f12e82693 Author: Kshitiz Sharma Date: Fri May 20 11:59:00 2016 +0100 Deleted tags commit f3b90300799878178c09841ccac7ffcd4c9cc4d9 Author: Kshitiz.Sharma Date

考虑下面的git日志。提交按日期排序。然而,有一个提交明显比其他提交更老,但仍然出现在顶部

commit f9afb9e89918faaff09686ce1df4a36f12e82693
Author: Kshitiz Sharma
Date:   Fri May 20 11:59:00 2016 +0100

    Deleted tags

commit f3b90300799878178c09841ccac7ffcd4c9cc4d9
Author: Kshitiz.Sharma
Date:   Fri Jun 10 13:00:32 2016 +0000

    Refactor some code

    git-svn-id: svn://1.1.1.1/myrepo@29029 ca623f4c-c864-0410-95d3-a40aa24e21c6

commit c98ad952b84403908ba656ab2f18af9a18a4f95c
Author: Kshitiz.Sharma
Date:   Wed Jun 8 14:35:29 2016 +0000

    Handle nullpointer exception

    git-svn-id: svn://1.1.1.1/myrepo@29010 ca623f4c-c864-0410-95d3-a40aa24e21c6

为什么会这样?

提交日期并不决定提交的顺序。有三种情况可能会创建过期订单提交:

  • 提交可能设置了假日期
  • 提交可能来自不同的分支,并且可能是使用
    合并
    引入的(通常的
    git日志
    不显示合并)
  • 提交可能已被
    重基
    移动(在提交图中移动提交,但保留原始日期不变)

  • 从您正在使用的git svn(它做了大量的重定基)的事实来看,我猜这是第3个问题。

    提交日期并不决定它们的顺序。有三种情况可能会创建过期订单提交:

  • 提交可能设置了假日期
  • 提交可能来自不同的分支,并且可能是使用
    合并
    引入的(通常的
    git日志
    不显示合并)
  • 提交可能已被
    重基
    移动(在提交图中移动提交,但保留原始日期不变)

  • 根据您使用的是执行大量重定基的git svn这一事实判断,我猜这是第3个问题。

    顶部的提交没有转发到svn存储库。它只存在于git中。其他提交被发送到SVN(使用,由其
    git SVN id
    s证明)

    当您使用
    git-SVN-rebase
    从SVN获取最新更改时,
    git-SVN
    会重新安排您的提交,并将本地内容置于(线性)SVN历史记录之上。(也就是说,它实际上是SVN不知道的。)


    重定基址只会重新安排历史。它不会更改提交日期。

    顶部的提交未转发到SVN存储库。它只存在于git中。其他提交被发送到SVN(使用,由其
    git SVN id
    s证明)

    当您使用
    git-SVN-rebase
    从SVN获取最新更改时,
    git-SVN
    会重新安排您的提交,并将本地内容置于(线性)SVN历史记录之上。(也就是说,它实际上是SVN不知道的。)

    重定基址只会重新安排历史。它不会更改提交日期