[解決済み] Gitでプッシュする前に複数のコミットを結合する [重複]。
2022-03-22 06:23:22
質問
私のローカルリポジトリには、テーマ的に類似したコミットが多数あります。リモートにプッシュする前に、それらを一つのコミットにまとめたいと思います。どうすればいいのでしょうか?私はこう思います。
rebase
はこれを行うが、私はドキュメントを理解することができません。
どのように解決するのですか?
あなたがやりたいことは、git では "squashing" と呼ばれるものです。 これを行うにはたくさんのオプションがありますが(多すぎますか?)、未プッシュのコミットをすべて一つのコミットにマージしたいだけなら、これを行います。
git rebase -i origin/master
これで、テキストエディタが表示されます(
-i
は対話型("interactive")のため、次のようなファイルです。
pick 16b5fcc Code in, tests not passing
pick c964dea Getting closer
pick 06cf8ee Something changed
pick 396b4a3 Tests pass
pick 9be7fdb Better comments
pick 7dba9cb All done
をすべて変更します。
pick
から
squash
(または
s
を除く)。
pick 16b5fcc Code in, tests not passing
squash c964dea Getting closer
squash 06cf8ee Something changed
squash 396b4a3 Tests pass
squash 9be7fdb Better comments
squash 7dba9cb All done
ファイルを保存して、エディタを終了します。 すると、別のテキストエディタが開き、すべてのコミットからのコミットメッセージをひとつの大きなコミットメッセージにまとめることができるようになります。
ほらね。git squashing"でググれば、他のすべてのオプションについての説明が得られます。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] 新しいローカルブランチをリモートの Git リポジトリにプッシュし、それを追跡するにはどうすればよいのでしょうか?
-
[解決済み] Gitを使って最後のXコミットをまとめる
-
[解決済み] git rebase の取り消し
-
[解決済み] Git フェッチ リモートブランチ
-
[解決済み] 前のコミットを複数のコミットに分割する
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】git revert <hash> not allowed due to a merge but no -m option was given.
-
[解決済み】Gitのエラー。リモートリポジトリへの接続時に「Host Key Verification Failed」。
-
[解決済み】GitHubで空のブランチを作成する
-
[解決済み】ローカルGitブランチとそのリモートブランチを比較する方法
-
[解決済み] GitBash | origin master - rejected (fetch first) | GitHub リポジトリにファイルがない。
-
[解決済み] リモートブランチにプッシュできない、ブランチに解決できない
-
[解決済み] エラーです。リベースを使用してプルできません。あなたはステージングされていない変更を持っています
-
[解決済み] Gitを使って最後のXコミットをまとめる
-
[解決済み] 複数のコミットを1つのスクワッシュされたコミットとして別のブランチにマージするにはどうすればよいですか?
-
[解決済み] 既にリベースを開始している場合、2つのコミットを1つにマージするにはどうすればよいですか?