[解決済み】Git: ブランチ上のすべてのコミットを破棄する方法
2022-03-23 23:27:44
質問
から新しいブランチを作成します。
master
を使っています。
git checkout -b testbranch
20回ほどコミットしています。
さて、この20のコミットを潰したいと思います。私はそうします。
git rebase -i HEAD~20
コミット数がわからない場合はどうすればいいのでしょうか?のような方法はないのでしょうか?
git rebase -i all on this branch
解決方法は?
すべてのコミットを破棄するもう一つの方法は、インデックスを master にリセットすることです。
git checkout yourBranch
git reset $(git merge-base master $(git branch --show-current))
git add -A
git commit -m "one commit on yourBranch"
これは、どのブランチから "yourBranch" が来たかを知っていることを意味するので、完璧ではありません。
注:オリジンブランチが
Gitでは簡単/可能
(その
視覚的な方法は、多くの場合、最も簡単です。
のように
こちらをご覧ください
).
注
git branch --show-current
は
は、Git 2.22 (Q1 20219) で導入されました。
.
EDIT:あなたが使用する必要があります
git push --force
リセットの場合は、以下のようになります。
git reset $(git merge-base master $(git rev-parse --abbrev-ref HEAD))
[それは)自動的に現在いるブランチを使用します。
それを利用すると コマンドはブランチ名に依存しないので、エイリアスを使用することもできます。 .
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] まだプッシュされていない Git マージを元に戻す
-
[解決済み] git rebase の取り消し
-
[解決済み] Git リポジトリで削除されたファイルを検索して復元する方法
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み] 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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] LFはgitでCRLFに置き換えられます - それは何ですか、そしてそれは重要ですか?[重複]。
-
[解決済み] git ls-remote と git ls-remote origin の違い。
-
[解決済み] Git作者不明
-
[解決済み] Gitを使って最後のXコミットをまとめる
-
[解決済み] Git で現在のブランチ名を取得するには?
-
[解決済み] 複数のコミットを1つのスクワッシュされたコミットとして別のブランチにマージするにはどうすればよいですか?
-
[解決済み] merge --squashとrebaseの違いは何ですか?
-
[解決済み] Git のブランチがいつ作成されたかを判断するには?
-
[解決済み】Gitで現在のブランチだけを表示させる
-
[解決済み】Gitでブランチポイントを見つける?