0

ローカル リポジトリで変更をコミットした場合は、変更を git push します。ローカルリポジトリへのコミットを修正および削除できることは知っていますが、リモートリポジトリで同様のことを行うために入力するコマンドは次のとおりです。

1) リモート リポジトリから最後のプッシュを削除します。2) リモート リポジトリへの最後のプッシュを修正します。

4

3 に答える 3

1

新しい参照を強制的にプッシュする必要があります。

vim yourfile
git add yourfile
git commit --amend --no-edit
git push -f origin yourbranch

他の誰かがあなたのリポジトリを使用している場合、特にそれが他のリポジトリのサブモジュールである場合は注意してください。

于 2012-12-04T22:24:33.243 に答える
1

最初にローカルで何かをしなければなりません。

1つのオプションは、インタラクティブなリベースを実行し、必要に応じてコミットを変更するpush -fことです。

git rebase -i HEAD~10最後の10回のコミット

于 2012-12-04T22:26:01.870 に答える
0

revertおそらく、その最後のコミットを実行したほうがよいでしょう(つまり、前のコミットを元に戻す新しいコミットを導入します)。リモートリポジトリにプッシュしたら、履歴を書き換えてはいけません。gitでは、revertには非常に具体的な意味があります。それをキャンセルするには、reverseパッチを使用してコミットを作成します。このようにして、履歴を書き換えることはありません。

git revert sha

次に、通常どおりにプッシュします。復帰は新しいコミットであり、特別な場合でpushはなく、何も強制する必要はありません。

git-revertマンページは、その説明でこれの多くをカバーしています。git-revertについて説明しているGitCommunityBookのもう1つの便利なリンクはこちらです。

于 2012-12-04T22:26:20.093 に答える