1

これが私のステップです:

  1. トランクから私のブランチに切り替えます
  2. トランクスサブディレクトリからブランチサブディレクトリへのマージを実行します。つまり、svn merge https:... / trunk / Class @ 2209 https:... branchs / mybranch / Class @ HEAD / Users / me /.../ Class

私が得た応答:---リポジトリURL間の違いを'/Users/me/.../Class'にマージします:C /Users/me/.../Class/NewFileYouDoNotHave.php競合の概要:ツリーの競合:1

リビジョン2209は、NewFileYouDoNotHave.phpがトランクに追加されたものと同じリビジョンです。以前のバージョンが欲しいと理解しています。ただし、以前のトランクリビジョンは、ブランチの最新リビジョンよりも古いものです。(つまり、誰かがブランチを更新し、私のファイルを含めなかったと思います)。

これを修正するために、競合はおそらくどのファイルがどのリビジョンにあるかについてのsvnの混乱に起因することを読みました。そこで、NewFileYouDoNotHave.phpを削除して、トランクにコミットしました。次に、それを追加してトランクにコミットしました。ブランチに切り替えて再度マージを実行しましたが、それでも同じ結果が得られます。

先週の私の経験から、トランクに戻ると(今はブランチにいます)、Subclipseがsvnへの接続をドロップすることを知っています。サブクリップGUIを介してチームメニュー項目にアクセスしてsvnコマンドを実行することはできなくなりますが、ターミナルでsvnコマンドを実行することはできます。

スキル:noob
SVN:svn、バージョン1.6.5(r38866)サブクリップ
:1.0.6

アドバイスや洞察などをいただければ幸いです。!!!

4

1 に答える 1

0

マージするときは、マージ先のコード ベースの作業コピー (ブランチ) にいる必要があります。次に、トランク バージョン 2209 からトランク ヘッドを作業コピーにマージします。

つまり、v:2209 からトランク コードの先頭までの変更をブランチにマージしています。

[編集] マージするときは、マージするコードが 1 つのブランチからの変更の範囲であることを覚えておく必要があります。そのため、ブランチから、トランクで 2209 から 2221 に変更する必要があります。ブランチを作業コピーとして選択し、トランク @ 2209 からマージし、トランク 2221 にマージします。これにより、トランクの変更 2209 から 2221 が取得され、作業コピーであるブランチにマージされます。

于 2010-03-19T15:46:47.417 に答える