[解決済み] SVN逆マージ?
質問
私のSVNリポジトリはリビジョン497で完璧でした。私はいくつかの悪いコミットを実行し、現在はリビジョン HEAD になっています。ロールバックするには、このようなコマンドを使用する必要があるようですね。
svn merge -r HEAD:497 .
を作業ディレクトリに置いたまま(そして作業ディレクトリはHEADリビジョンにある)。しかし、このコマンドは正しいのでしょうか?それともHEAD:498?または496? 私はすでにそのコマンドを実行し、現在のリビジョンは497と同じではないようです。なぜなら、私が更新 -r 497(または497の作業コピーを持っていて更新 -r HEAD)すると、多くのファイルの更新が発生するためです。
HEAD:497 が実際には 496 に戻ってしまう、ある種のフェンスポストの問題か何かでしょうか?それとも、HEADと497が同一であるにもかかわらず、私が更新すると、SVNは各リビジョンを遡るということでしょうか?
編集してください。
はっきりさせたいのですが、先ほど言ったように、497とマージしたHEADの間で更新すると、多くのファイルが変更されているのが見えます。もし497とHEADが同一であれば、それを検知してファイルの変更は発生せず、単に"Updated to revision 497."と表示されると思いました。(そしてもしそうなら、なぜ?)
解決方法は?
あなたのレポがリビジョン497で原始的な状態だったのなら、あなたの言うとおり、aをする必要があると思います。
svn merge -r HEAD:497 .
このマージコマンドは作業コピーのファイルのみを変更するので、リポジトリの HEAD を更新するために変更をコミットすることも忘れないようにしてください。
マージとコミットを行った後、リビジョン497とHEADを比較してみると、両者は同一であるはずです。
関連
-
[解決済み] SVNエラー - 作業コピーではありません
-
[解決済み] svn log -v' のように 'git log' にファイル名を表示させる方法
-
[解決済み] 履歴のある SVN リポジトリを新しい Git リポジトリに移行するにはどうすればよいですか?
-
[解決済み] svn log -v' のように 'git log' にファイル名を表示させる方法
-
[解決済み] SVNでディレクトリを無視するには?
-
[解決済み】SVNコミットの特定ファイルについて
-
[解決済み】`find`が.svnディレクトリを無視するようにするにはどうしたらいいですか?
-
[解決済み】ローカルコピーを削除せずにSVNリポジトリからファイルを削除する方法
-
[解決済み】コミット前にファイルをsvnに「unadd」する。
-
[解決済み】TortoiseSVNをコマンドラインから使用する方法は?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] svn:externalsを使い始めるには?
-
[解決済み] svn log -v' のように 'git log' にファイル名を表示させる方法
-
[解決済み] SVNコミットコマンド
-
[解決済み】Subversionでコミットされていない変更を一時的に片付ける("git-stash "のようなもの)。
-
[解決済み】SVNの結果コードの意味は何ですか?
-
[解決済み】Subversionのtrunk、branch、tagとは何ですか?重複
-
[解決済み】ローカルコピーを削除せずにSVNリポジトリからファイルを削除する方法
-
[解決済み】コミット前にファイルをsvnに「unadd」する。
-
[解決済み】「ローカル編集、更新時に着信削除」メッセージの解決方法
-
[解決済み】TortoiseSVNをコマンドラインから使用する方法は?