9

サブバージョン 1.5 を使用して、ブランチ A から分岐したブランチ B があります。両方のブランチで作業を行った後、A から B への変更をマージし (Bsvn merge http://path/to/Aの作業ディレクトリで使用)、 get を取得しsvn: Target path does not existます。これは何を意味するのでしょうか?

4

3 に答える 3

9

これは、Subversion がブランチ B にマージしようとしたブランチ A のファイルに変更がありましたが、ファイルがブランチ B に存在しないため、変更をマージする場所がないことを意味します。例えば:

  • ブランチ B を作成する
  • 変更 A/README
  • B/README を削除
  • マージ A -> B

ブランチ B ではファイルが削除されているため、README の変更をブランチ B に適用することはできません。

編集: これにより、Subversion 1.6 でツリーの競合が発生します。

于 2008-10-17T20:40:05.030 に答える
1

トランクとブランチに奇妙な歴史があったため、この問題が発生しました。

このような:

              /---------\
trunk -------+---+       +---\
                  \-----------BOOM!

トランク -> ブランチのマージが機能しませんでした。

ブランチのマージ -> トランクはうまくいきました。

              /---------\
trunk -------+---+       +---+-----
                  \---------/

おそらく、トランクには、共有された最後の先祖に関するより良い情報があったためです。

私の場合、トランクにマージする準備ができていませんでしたが、トランクから新しいブランチを作成し、そこに古いブランチをマージすることができました。

              /---------\
trunk -------+---+       +---+-------
                  \           \---+--
                   \-------------/
于 2013-03-20T18:05:29.063 に答える