我正在浏览http://arago-project.org/git/projects/linux-omap3.git repo并遇到了一个奇怪的约会事件,基本上说父母提交的年龄比孩子年轻一岁.
这怎么可能?
user@ubuntu1004:/f/linux-omap3$ git log -2 --parents 4b8db3b
commit 4b8db3b368f5601717e3ffee0051628ba33172d3 3c0eee3fe6a3a1c745379547c7e7c904aa64f6d5
Author: Kevin Hilman <khilman@deeprootsystems.com>
Date: Fri Aug 20 11:19:52 2010 -0700
OMAP: bus-level PM: enable use of runtime PM API for suspend/resume
[...skipped...]
Cc: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
commit 3c0eee3fe6a3a1c745379547c7e7c904aa64f6d5 65f42886e24be2197b1263f138eabf40c6774d00
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date: Tue Jan 4 16:50:19 2011 -0800
Linux 2.6.37
Run Code Online (Sandbox Code Playgroud) 正如标题所说:我希望我推送到 GitHub 的所有提交都带有推送的时间戳,而不是提交的时间戳,显示在 GitHub 的提交选项卡中。
我使用相当标准的工作流程:
<do some work>
git add -u
git commit -m "Message 1."
...
<do some work>
git add -u
git commit -m "Message N."
git push myrepo master
Run Code Online (Sandbox Code Playgroud)
这使得所有 N 次提交都显示在 GitHub 中,这很好。但是也显示了提交的时间,我不喜欢。我更喜欢只显示最后一个(或推送)的时间戳。
我想手动控制git commit时间戳,以便我的GIT_COMMITTER_DATE始终与GIT_AUTHOR_DATE匹配。我已经看到许多使用filter-branch重写历史记录的解决方案,但是我宁愿对此保持主动,并将逻辑放在git hook中,以便它始终与向前匹配。
但是我发现,虽然这些变量如果在调用git的环境中定义时可以很好地工作,但是在预提交git钩子中定义它们时似乎没有任何作用。例如:
# this works if run directly on cmd line, but not inside the pre-commit hook
export GIT_AUTHOR_DATE='Mon, 11 Aug 2014 11:25:16 -0400'
export GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"
Run Code Online (Sandbox Code Playgroud)
有什么方法可以在git钩子内动态调整这些值,以使提交自动具有所需的时间戳?我正在使用git版本1.8.5.2
我想做一个rebase来从我的历史中删除某个提交.我知道该怎么做.但是,如果我这样做,则提交时间戳设置为我完成rebase的那一刻.我希望提交保持时间戳.
我在这里看到了最后一个答案:https: //stackoverflow.com/a/19522951/3995351,但它没有用.
最后一个重要的命令只显示了一个新行
>
Run Code Online (Sandbox Code Playgroud)
所以我开了一个新问题.
我只是将我的项目从svn导入到git
所以我打算对我的提交历史做一些清理工作
假设我有这种提交历史(都已被推送)
Commit Message Date
..
ffa7e08 change error message on isfileuploade.. 2012-06-04
85a467f change error message on extension.. 2012-05-24
49f3a89 add exit(), on execute() method .. 2012-05-09
af68b2b add method getFileName 2012-05-04
..
Run Code Online (Sandbox Code Playgroud)
如何在49f3a89不更改日期的情况下更改提交消息?
如果我这样做git rebase -i af68b2b,我成功地更改了提交消息,显然它也是旧的提交日期.
有办法解决这个问题吗?