修正されたコミットをリモートGitリポジトリにプッシュするにはどうすればよいですか?

スポイケ

ソースコードを少し操作した後、通常のことをコミットしてから、リモートリポジトリにプッシュしました。しかし、ソースコードでインポートを整理するのを忘れていることに気づきました。だから私は前のコミットを置き換えるために修正コマンドを実行します:

> git commit --amend

残念ながら、コミットをリポジトリにプッシュバックすることはできません。これは次のように拒否されます:

> git push origin
To //my.remote.repo.com/stuff.git/
 ! [rejected]        master -> master (non-fast forward)
error: failed to push some refs to '//my.remote.repo.com/stuff.git/'

私は何をすべきか?(リモートリポジトリにアクセスできます。)

gitster

私は実際に一度リポジトリをプッシュして--force.gitLinus BIGTIMEに叱られました一般的に、これは他の人々に多くの問題を引き起こします。簡単な答えは「やらないで」です。

とにかく他の人がそうするためのレシピを与えたのを見るので、ここではそれらを繰り返しません。ただし、-force(または+ master)を使用して修正されたコミットをプッシュした、状況から回復するためのヒントを次に示します。

  1. を使用git reflogして、修正した古いコミットを検索します(これを呼び出しoldますnew修正によって作成した新しいコミットを呼び出します)。
  2. 間のマージを作成oldしてnew、ツリー記録newなどを、git checkout new && git merge -s ours old
  3. それをあなたのマスターにマージして git merge master
  4. 次の結果でマスターを更新します git push . HEAD:master
  5. 結果を押し出します。

次に、不幸なことに、修正してプッシュを強制することで消去したコミットに基づいて作業を行った人は、結果として得られるマージで、あなたが優先newすることがわかりますold彼らの後にマージは、間の競合は表示されませんoldnew、彼らが苦しむする必要はありませんので、あなたの改正によるものです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

修正されたコミットをリモートGitリポジトリにプッシュするにはどうすればよいですか?

分類Dev

修正されたコミットをリモートGitリポジトリにプッシュするにはどうすればよいですか?

分類Dev

Gitを使用してリモートリポジトリに最初にプッシュするにはどうすればよいですか?

分類Dev

Gitを使用してタグをリモートリポジトリにプッシュするにはどうすればよいですか?

分類Dev

コミットハッシュによってgitリポジトリでコミットされたファイルとすべてのファイルのサイズをクエリするにはどうすればよいですか?

分類Dev

git-replaceをリモートリポジトリにプッシュするにはどうすればよいですか?

分類Dev

gitリポジトリをdokkuにプッシュするにはどうすればよいですか?

分類Dev

リモートでクラッシュしたGitリポジトリを復元するにはどうすればよいですか?

分類Dev

以前のコミットなしで、特定のコミットをリモートにプッシュするにはどうすればよいですか?

分類Dev

リモートGitリポジトリにプッシュした後、コミットされていない変更があるのはなぜですか?

分類Dev

アップストリームをマージするときにGitコミットが押しつぶされました。ローカルリポジトリを更新するにはどうすればよいですか?

分類Dev

Gitリポジトリを特定のコミットにロールバック(リセット)するにはどうすればよいですか?

分類Dev

Gitリポジトリを以前のコミットに戻すにはどうすればよいですか?

分類Dev

SSH経由で動作するプッシュ可能なリモートMercurialリポジトリを作成するにはどうすればよいですか?

分類Dev

Git:PRマージコミットを重複させずにローカルリポジトリとアップストリームリポジトリを同期するにはどうすればよいですか?

分類Dev

プルした後、誰かがリモートリポジトリからコミットを削除しました。次のgitプルでローカルに保持するにはどうすればよいですか?

分類Dev

git headを以前のローカルコミットにリセットしてから、そのコミットをリモートにプッシュするにはどうすればよいですか?

分類Dev

ブランチを別のリモートリポジトリにプッシュするにはどうすればよいですか?

分類Dev

コミットがリモートブランチにプッシュされた後にコミットコンテンツを変更するにはどうすればよいですか?

分類Dev

データが裸のgitリポジトリにプッシュされたときに、データを自動的にgit-repoにプッシュするにはどうすればよいですか?

分類Dev

すべてのコミット履歴を潰して別のリモートリポジトリにプッシュするにはどうすればよいですか?

分類Dev

元のリポジトリにプッシュするたびに別のリポジトリをフェッチするgitリポジトリを作成するにはどうすればよいですか?

分類Dev

GitHubにプッシュされたコミットを問題にリンクするにはどうすればよいですか?

分類Dev

共有サーバーからgitリポジトリをプルしてプッシュバックするにはどうすればよいですか?

分類Dev

githubのフォークされたリポジトリから最新のコミットを見つけるにはどうすればよいですか?

分類Dev

gitリポジトリで最後にコミットするまでにコミットされたすべてのファイルのリストを表示するにはどうすればよいですか?

分類Dev

プッシュされたオートコンプリートCDPATHエントリを作成するにはどうすればよいですか?

分類Dev

リモートリポジトリから最新のコミットを取得するにはどうすればよいですか?

分類Dev

リモートのベアリポジトリのブランチでコミットを削除するにはどうすればよいですか?

Related 関連記事

  1. 1

    修正されたコミットをリモートGitリポジトリにプッシュするにはどうすればよいですか?

  2. 2

    修正されたコミットをリモートGitリポジトリにプッシュするにはどうすればよいですか?

  3. 3

    Gitを使用してリモートリポジトリに最初にプッシュするにはどうすればよいですか?

  4. 4

    Gitを使用してタグをリモートリポジトリにプッシュするにはどうすればよいですか?

  5. 5

    コミットハッシュによってgitリポジトリでコミットされたファイルとすべてのファイルのサイズをクエリするにはどうすればよいですか?

  6. 6

    git-replaceをリモートリポジトリにプッシュするにはどうすればよいですか?

  7. 7

    gitリポジトリをdokkuにプッシュするにはどうすればよいですか?

  8. 8

    リモートでクラッシュしたGitリポジトリを復元するにはどうすればよいですか?

  9. 9

    以前のコミットなしで、特定のコミットをリモートにプッシュするにはどうすればよいですか?

  10. 10

    リモートGitリポジトリにプッシュした後、コミットされていない変更があるのはなぜですか?

  11. 11

    アップストリームをマージするときにGitコミットが押しつぶされました。ローカルリポジトリを更新するにはどうすればよいですか?

  12. 12

    Gitリポジトリを特定のコミットにロールバック(リセット)するにはどうすればよいですか?

  13. 13

    Gitリポジトリを以前のコミットに戻すにはどうすればよいですか?

  14. 14

    SSH経由で動作するプッシュ可能なリモートMercurialリポジトリを作成するにはどうすればよいですか?

  15. 15

    Git:PRマージコミットを重複させずにローカルリポジトリとアップストリームリポジトリを同期するにはどうすればよいですか?

  16. 16

    プルした後、誰かがリモートリポジトリからコミットを削除しました。次のgitプルでローカルに保持するにはどうすればよいですか?

  17. 17

    git headを以前のローカルコミットにリセットしてから、そのコミットをリモートにプッシュするにはどうすればよいですか?

  18. 18

    ブランチを別のリモートリポジトリにプッシュするにはどうすればよいですか?

  19. 19

    コミットがリモートブランチにプッシュされた後にコミットコンテンツを変更するにはどうすればよいですか?

  20. 20

    データが裸のgitリポジトリにプッシュされたときに、データを自動的にgit-repoにプッシュするにはどうすればよいですか?

  21. 21

    すべてのコミット履歴を潰して別のリモートリポジトリにプッシュするにはどうすればよいですか?

  22. 22

    元のリポジトリにプッシュするたびに別のリポジトリをフェッチするgitリポジトリを作成するにはどうすればよいですか?

  23. 23

    GitHubにプッシュされたコミットを問題にリンクするにはどうすればよいですか?

  24. 24

    共有サーバーからgitリポジトリをプルしてプッシュバックするにはどうすればよいですか?

  25. 25

    githubのフォークされたリポジトリから最新のコミットを見つけるにはどうすればよいですか?

  26. 26

    gitリポジトリで最後にコミットするまでにコミットされたすべてのファイルのリストを表示するにはどうすればよいですか?

  27. 27

    プッシュされたオートコンプリートCDPATHエントリを作成するにはどうすればよいですか?

  28. 28

    リモートリポジトリから最新のコミットを取得するにはどうすればよいですか?

  29. 29

    リモートのベアリポジトリのブランチでコミットを削除するにはどうすればよいですか?

ホットタグ

アーカイブ