如何添加隐藏的提交?

时间:2019-06-23 15:46:56

标签: git

我有很多提交的项目。我想在此项目中添加一些内容,但是我不想在历史记录中添加新的提交,但是我想在最后一次约会时添加它。

我知道我可以使用git rebase,但是它只允许在第一个日期创建一次提交。

我的例子:

  • 首次提交(other_author,master)-2019-06-23 10:00:00
  • 第二次提交(other_author,master)-2019-06-23 11:00:00
  • 第三次提交(other_author,master)-2019-06-23 12:00:00

现在,我想开始我的工作。我添加了两个新提交:

  • 第四次提交(我正在进行中)-2019-06-23 14:00:00
  • 第五次提交(我正在开发)-2019-06-23 15:00:00

然后将其推送到存储库中。第二天,我想添加下一个提交:

  • 第六次提交(我正在开发)-2019-06-24 10:00:00

现在...我该怎么做才能掌握该历史记录:

  • 首次提交(other_author,master)-2019-06-23 10:00:00
  • 第二次提交(other_author,master)-2019-06-23 11:00:00
  • 第三次提交(other_author,master)-2019-06-23 12:00:00
  • 上次提交(我,是在master上)-2019-06-24 10:00:00(包含来自develop的第四,第五和第六次提交)

确切的时间无关紧要。我只想隐藏以前提交的日期,而最后一次提交只有一次提交。

4 个答案:

答案 0 :(得分:0)

您可以在提交命令中添加--amend来提交和更改上次提交的消息,而无需添加新的提交。

答案 1 :(得分:0)

您可以每次修改提交,并在准备就绪时将其推送。

例如

 git commit --amend --no-edit 

答案 2 :(得分:0)

您可以使用merge --squash从所有这些请求中仅获取一个提交,但这将是一个新的提交。

答案 3 :(得分:0)

如果您已经推送到远程仓库,那么最好的选择是合并到母版时使用上述壁球建议。这将使您对master提交一次。

您不想在推送到远程仓库后更改历史记录。这真是个坏主意,我什至不提怎么做。

如果您还没有推送到远程仓库,那么上面使用--amend的建议是个好主意。