[解決済み] git でプッシュした後にコミットを破棄するには?
質問
複数のコミットをつぶすことについての良い説明です。
http://git-scm.com/book/en/Git-Branching-Rebasing
が、すでにプッシュされているコミットに対しては機能しません。ローカルとリモートの両方のリポジトリにある直近の数コミットを潰すにはどうしたらいいでしょうか?
を実行すると
git rebase -i origin/master~4 master
として、最初のものを維持します。
pick
として設定し、他の3つを
squash
で、終了すると(emacsのc-x c-cで)、こうなります。
$ git rebase -i origin/master~4 master
# Not currently on any branch.
nothing to commit (working directory clean)
Could not apply 2f40e2c... Revert "issue 4427: bpf device permission change option added"
$ git rebase -i origin/master~4 master
Interactive rebase already started
ここで、2f40 は
pick
をコミットします。そして現在、4つのコミットはどれも
git log
. 私は、コミットメッセージを入力できるようにエディタが再起動されることを期待していました。私は何を間違えているのでしょうか?
解決方法を教えてください。
でローカルにコミットします。
git rebase -i origin/master~4 master
で強制的にプッシュします。
git push origin +master
の違い
--force
と
+
のドキュメントより
git push
:
注意事項
--force
はプッシュされたすべての参照に適用されます。 と一緒にpush.default
に設定します。matching
または複数のプッシュ で設定されたデスティネーションはremote.*.push
を上書きすることがあります。 現在のブランチ以外(厳密には背後にあるローカルな参照も含む)の を使用します)。強制的にひとつのブランチのみにプッシュするには+
をプッシュする参照仕様の前に置く(例えばgit push origin +master
で強制的に にプッシュします。master
ブランチ)を作成します。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] まだプッシュされていない Git マージを元に戻す
-
[解決済み] Gitを使って最後のXコミットをまとめる
-
[解決済み] detached HEADとmaster/originの連携はどうすればいいですか?
-
[解決済み] 既にリベースを開始している場合、2つのコミットを1つにマージするにはどうすればよいですか?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルの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のプッシュでエラーが発生! [リモート拒否] master -> master (pre-receive hook declined) error: failed to push s...
-
gitコミット発生 ! [リモート拒否] master -> master (pre-receive hook declined) 解決策
-
[解決済み] 複数のgitコミットを元に戻すには?
-
[解決済み] 複数のコミットをチェリーピックする方法
-
[解決済み] 短いGitバージョンのハッシュを取得する
-
[解決済み] git commit signing failed: secret key not available.
-
[解決済み] Git作者不明
-
[解決済み] Gitです。リベース中に "Cannot 'squash' without a previous commit" エラー発生
-
[解決済み] Gitを使って最後のXコミットをまとめる