首页 > 解决方案 > 我可以更改推送到远程存储库的最后一次提交吗?

问题描述

假设这是我在提交和推送到远程存储库时在我的暂存区域中的课程:

public class Money {
    private int amount;
    private String currencyCode;

    public Money(int amount, String currencyCode) {
        this.amount = amount;
        this.currencyCode = currencyCode;
    }
}

在那之后,我意识到我没有添加应该包含在最后一次提交中的 getter 和 setter。

有没有办法更改已经推送到远程存储库的最后一次提交(添加 getter 和 setter)?

或者我应该添加一个新的提交并带有一些消息,表明这是对先前提交的改进?

标签: gitgit-commitgit-push

解决方案


最好的方法是通过修复进行新的提交。保持历史清晰是非常重要的。

但仅用于教育目的: 您可以使用 --amend 标志进行提交,然后使用 --force 标志进行推送。你得到了一个错误,因为 git 试图将你的远程存储库保存干净。你应该告诉你明白你想做什么,通过添加--forcegit push --force


推荐阅读