[解決済み] ローカルチェンジセットをすべて削除し、ツリーに戻す
2023-02-05 17:33:24
質問
Mercurial を使っているのですが、ローカルで3つの頭でひどい混乱に陥っています。プッシュができないので、ローカルの変更とコミットをすべて削除し、完全にクリーンなコードとクリーンな履歴で再スタートしたいのですが、どうすればいいですか?
言い換えれば、私は (a) リモートブランチの先端に存在するのとまったく同じコードをローカルに終了したい、そして (b) どんなローカルコミットの履歴もない状態にしたいのです。
私が知っているのは
hg update -C
はローカルの変更を上書きすることは知っています。しかし、どのようにローカルコミットを削除するのでしょうか?
はっきり言って、私はローカルで行ったどんな仕事も保存することに興味がありません。私は、完全にクリーンなローカル チェックアウトに戻るための最も簡単な方法が欲しいだけです。
どのように解決するのですか?
最も簡単な方法(新しい
hg clone
) が実用的でない場合、私は
hg strip
:
% hg outgoing -l 1
% hg strip $rev # replace $rev with the revision number from outgoing
まで繰り返す。
hg outgoing
が静かになるまで繰り返す。なお
hg strip $rev
を消す
$rev
とその子孫をすべて消去します。
なお、このとき
を最初に有効にします。
strip
を有効にする必要があるかもしれません。
.
PS: さらにスマートなアプローチは、revset言語を使用して、行うことです。
% hg strip 'roots(outgoing())'
関連
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] マージされたGitブランチをすべて削除するにはどうすればよいですか?
-
[解決済み] リモートレポにプッシュされたGitの特定のコミットを元に戻す
-
[解決済み】Gitのワークフローとrebaseとmergeの質問
-
[解決済み】Gitで最後のコミットを2つに分割する方法
-
[解決済み】ソースコントロールに変更をコミットする頻度を教えてください。[クローズド]
-
[解決済み】Mercurial - 古いバージョンに戻してそこから継続する
-
[解決済み] Git を使って、ローカルとリモートの間の変更点を見つけるには?
-
[解決済み] Hudson / Jenkinsの設定ファイルをソース管理する方法はありますか?
-
[解決済み] IntelliJ IDEA 9/10、ソースコントロールにチェックインする(しない)フォルダは何ですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Mercurialで不正なコミットメッセージを編集するには?重複
-
[解決済み】3ウェイマージの方が2ウェイマージより有利なのはなぜですか?
-
[解決済み】ソースコントロールに変更をコミットする頻度を教えてください。[クローズド]
-
[解決済み] TFSソースコントロールで複数のファイルを移動する
-
[解決済み] Mercurialでフォルダ以下をすべて無視するにはどうしたらいいですか?
-
[解決済み] Hudson / Jenkinsの設定ファイルをソース管理する方法はありますか?
-
[解決済み] IntelliJ IDEA 9/10、ソースコントロールにチェックインする(しない)フォルダは何ですか?
-
[解決済み] 名前付きブランチとマルチリポジトリの比較
-
[解決済み] hg のバージョン間でどのファイルが変更されたかのリストを生成する
-
[解決済み] どのような場合に支店を設立すべきなのでしょうか?