3

トランクからの新しい変更で更新したいSVNにブランチがあります。このブランチには、ローカルに変更を加えたファイルもいくつかあります。これらの変更の一部はまだコミットしたくありません。

トランクからの変更をこのブランチにマージしようとすると、エラーが発生します。

Error: Cannot merge into a working copy that has local modifications

サーバー上のリモートでトランクをブランチにマージする方法はありますか?その後、ブランチを通常どおり更新できますか?

4

3 に答える 3

8

マージには、作業ディレクトリのクリーン最新のコピーを使用することを強くお勧めします

ただし、これらの基本的なルールを破り、足を撃ちたい場合は、Subversion が手段と弾丸を提供します。

$ svn merge --force --allow-mixed-revisions $repo_url

この--allow-mixed-revisionsパラメーターにより、作業コピーにリビジョンが混在していてもマージを実行できます。パラメータを使用すると、--forceローカルの変更があってもマージできます。

実際には、 を使用--forceするのが良いアイデアと思われるシナリオがいくつかありますが、 を使用する理由がまったく思いつきません--allow-mixed-revisions

于 2013-07-08T22:02:02.510 に答える
6

いいえ。作業コピーでマージ プロセスを実行し、潜在的な競合を解決してコミットする必要があります。

ただし、作業コピーは、現在作業しているものとは異なる作業コピーである可能性があります。ブランチを新しいディレクトリに新たにチェックアウトし、この新しいディレクトリでマージしてコミットするだけです。

于 2013-07-08T21:49:31.267 に答える