1

我只是将我的项目从 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
..

如何在49f3a89不更改日期的情况下更改提交消息?

如果我这样做git rebase -i af68b2b了,我成功地更改了提交消息,显然它也是旧的提交日期..

有没有办法解决这个问题?

4

2 回答 2

6

从这个stackoverflow答案中获取:

git filter-branch --env-filter 'GIT_COMMITTER_DATE=$GIT_AUTHOR_DATE; export GIT_COMMITTER_DATE'

…确实解决了我的问题。

于 2013-10-21T11:42:47.127 回答
0

那个怎么样:

  1. gitk --all // 为了更好的查看
  2. 右键单击提交 49f3a89 并将开发分支重置到此处
  3. git gui 和 commit -> 修改最后一次提交
  4. 现在您可以使用您想要的任何数据来修改提交 49f3a89
  5. 提交,您可以从以后提交 af68b2b 中挑选更改

不确定这是否有帮助?

于 2013-10-21T10:33:48.400 回答