0

私はそのような状況を持っています:

  • コードがSVNでホストされていないWebサイトがあります。
  • このウェブサイトに変更を加えました。
  • クライアント(私たちのチームメンバーではない)に雇われたフリーランサーが並行して変更を加えました。協力する可能性はありません。
  • そのため、SVN の「trunk」と「branch」のように、ハード ドライブに 2 つのフォルダーがあり、同じサイトの 2 つのバージョンが並行して変更されています。

問題は、Web サイトの両方のバージョンを SVN リポジトリにインポートし、1 つをトランクとして、もう 1 つをブランチとしてインポートし、SVN の相違点のリストから取得して、変更されたファイルを編集し、競合を解決することは可能ですか? このような問題を解決するために特別に作成された SVN のように見えますが、解決方法を調査することはできません。

  • トランクに 1 つのバージョンをインポートしました。
  • ブランチに別のバージョンをインポートしました。
  • SmartSVNで「マージ」を選択しましたが、変更されたファイルはすべて「ファイルの変更」ではなく「ツリーの競合」として認識されるため、「ファイルは変更されていません」と書かれているため、組み込みの競合解決ツールを使用できません。しかし同時に「ファイルはツリー競合」状態です。

テストのために、私はそのような方法でさえ作成しました:完全に同じファイルをブランチとトランクに置き、「マージ」をクリックすると、それらが完全に同一であることを知っていても、すべてのファイルが「ツリー競合」としてマークされます。偽の紛争報告をします。

4

2 に答える 2

1

事前に編集したもののコピーもまだ持っていますか?その場合は、それを使用してトランクを作成し、その時点でブランチを作成します。次に、トランクとブランチの2つの別々の作業コピーで、変更(トランク)とフリーランサーの変更(ブランチ)をコピーし、両方をコミットします。その後、SVNツールを使用して2つをマージできる場合があります。

ただし、 2つのディレクトリでBeyondCompareのようなツールを使用する方が簡単な場合があります...

于 2012-01-20T10:42:02.327 に答える
1

トランクとブランチにインポートする必要はありませんが、まずトランクに共通の基本バージョンをインポートし、ブランチを作成して、そこで変更を 1 つコミットし、その他をトランクにコミットします。これでマージが機能するはずです。マスターとブランチにファイルを作成すると、マージ時にツリーの競合が発生します。

于 2012-01-22T09:46:58.953 に答える