2012-01-19 14 views
2

svnで自動的にコピーされたsvn:externalsファイル、つまり /granddad/folderExternaled/myComputedFile.txtからチェックアウトを行うとします。このチェックアウトは古いブランチからのものなので、トランク内のものと同じではありません。その後、私はトランクからブランチにマージします。svn mergeで外部の変更を有効にする方法

結果は、SVN 1.6で*。

  1. /祖父/ folderExternaled /はが変更されていないその外観を有するが、そのmergenfo です。
  2. /granddad/folderExternaled/myComputedFile.txtにmergeinfoが変更されているため、CONFLICTとして登録されます。

結果は、TortoiseSVN 1.7.4.22459では、項目1のみです。項目2は、矛盾がなく、正しく変更されています。

私はTortoiseSVNでSVNでないのならば、チェックボックスを使って外部フォルダを無視したり無視したりすることができますが、これは明らかに部分的に無視されています(機能変更は受け入れられません) (mergeinfoが更新されます)。

更新:

私の質問では明らかではないかもしれません。

回避策を見つけたいと思いますが、利用できるものがあるかどうかわかりませんでした。私は返事がないので何もないかもしれません。あるいは、私は十分にはっきりしていないかもしれません。これは最後の段落で、問題の内容を示しています。

答えて

1

外部の人は、たとえリポジトリが変更可能な場合であっても、変更することは適切ではないため、変更を考慮する必要はありません。また、ユーザーが変更を適用できるかどうかを知りたい場合でもマージ。これは、バージョン1.7の動作が理にかなっている理由です。リポジトリからのプロパティエントリだけをSVNで監視し、mergeinfoをExternalsフォルダに挿入しないでください。

これらの変更を確認する必要がある場合は、にチェックアウトしてください。 Externalsの2つのバージョンを比較して、最も古いファイルを手動で最新のファイルに上書きして比較してください。

+1

こんにちはシガーノ、ありがとうございました!私はあなたが正しいと思います。要約すれば; 1. SVN 1.7以降では、mergeinfoはもはや外部に関する恐ろしい問題ではありません。 2.私にとっては、外見を修正してそれを容易に追跡できるという考えは、サポートされていないように見えます。 3.小さなsvnの例を書いて、何が起こったのかを文書化したいと思っています。 SVNはAに外部を追加します。 Aから枝Bを作る; Bの外部を変更します。たとえば、使用するファイルのリビジョンが1から2に変更されます。 BをAにマージします。 – AnneTheAgile

関連する問題