facebook / sapling

A Scalable, User-Friendly Source Control System.

Home Page:https://sapling-scm.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Interactive Smartlog displays times based on *authored* time rather than *committed* time

Flameeyes opened this issue · comments

When trying out sapling for Zephyr I found myself in the following situation:

image

The "remote/main" bookmark is displayed as "3mo" (as in, three months old) because the current main commit is zephyrproject-rtos/zephyr@45a4177 which is authored in March, but committed yesterday.

ISL should likely refer to the committed time to make sense, as authored time changes all the time.

Hmm, I see what you mean. I guess I would have expected merging the commit to change the creation time. However, I suspect we're just using the date we get from git when pulling from the remote git server. Does a git checkout of the repo also show the same time for this commit? If so, there's not very much we could do.

In a git repository the two times are reported separately.

The default one that is shown in git log is the commit's AuthorDate field, which is the one of creation and currently retrieved by Sapling.

The other one is CommitDate and represents the time the commit was... committed to the repo. It's the one that, if displayed in ISL, would make the most sense.

I don't believe Sapling currently extracts the latter from the git repository, but as long as the original git checkout is there it can be retrieved.