私はUbuntuサーバー10.04にアップグレードしました。しかし、私の古いプロジェクトの多くは、さまざまなサーバー上の自己ホスト型Subversionリポジトリにまだラップアップされていたため、分散型VCのニーズに使用していたSVKを削除しました。これは当時の私のさまざまなシステム間で適切に機能していました。私はBazaarに移行することを決めました。私はすでに新しいプロジェクトでこれを評価していました。旧バージョンのコミットされていない変更を、以前のバージョンの作業ディレクトリから新しくインポートしたバザールリポジトリにマージするにはどうすればよいですか?
私はのsvn-輸入の使用を許可するのbzr-svnのプラグインをインストールしている - と首尾よく使用して/すべてのプロジェクトは、独自のセットにインポートされたVAR /のbzr /レポ/(リポジトリを設定します自動検出されたトランク2のレイアウト)。 bzrログは、すべてのプロジェクトの正常なインポートを確認します。
残念ながら、いくつかのプロジェクトで作業フォルダにいくつかのコミットされていない変更がありました。これらは中央の/var/bzr/repos/projectnameリポジトリに再作成したいものです。私は、これらを新たにインポートされたリポジトリの上に新しいリビジョンにしたいと思います。
どうすればよいですか?
これらの作業フォルダは、つまりは/ var/www /のプロジェクト名/ htdocsにされている - いくつかは、開発サーバー上にあり、一部は(既にインストールバザーや転覆を持っている)は、Windowsのラップトップ上にある
私が実行している試してみましたbzr initとbzr merge file:// var/bzr/repos/projectname/trunk - これは多数の競合を作成します。代わりに、私は試みました:bzr init; bzr add、bzr mergeを実行します。
それぞれの場合、新しく生成されたファイルをマージから削除して、.movedファイルの名前を変更して改名しようとしましたが、リビジョン番号が1から始まり、-301に逆戻りするという影響があります。別の異なる結果は、ローカルにコミットされた変更をバックアップしてバックアップしようとしたときのログ履歴の完全な消失でした。幸運なことに、毎回オリジナルのSubversionソースからリポジトリをリセットして再インポートすることができました。
長いルートは単に新しいフォルダに分岐/チェックアウトし、新しい変更をdiff/redoするだけですが、変更の記録やkdiffディレクトリマージ操作の実行は避けてください。
リビジョン番号とログを保持しながら、新しい変更を中央の/ var/bzr/repos/projectnameブランチに適用することが望ましいでしょう。
私はサーバー上の作業コピーでこれを試しました。これはかなりうまくいくようです。ラップトップではやや難しいですが、メインブランチへのSFTPアクセスが可能ならば可能でしょう。 – Fai