10

そのため、新しいリポジトリに追加したい 2 つのフォルダーがありますが、既にバージョン管理されているため、追加を拒否しています。これらのフォルダーとそのサブフォルダー内のすべての .svn フォルダーを削除しましたが、SVN はまだ何らかの形で認識しています。彼らがどのリポジトリの一部であると考えているかを確認し、そこにいないように伝え、それらを削除したり移動したりせずに新しいリポジトリに配置するにはどうすればよいですか?

4

2 に答える 2

17

ローカルの作業コピー内のすべてのフォルダーを削除した場合は.svn、それ以上バージョン管理されるべきではありません。.svn古いバージョンの SVN では、ルート フォルダーまたは直接のサブフォルダーだけでなく、すべてのフォルダーに隠しフォルダーを作成するために使用されることに注意してください。

exportまた、コマンドを実行して、ターゲット ディレクトリにバージョン管理されていない完全なコピーを作成し、.svnフォルダーの手動削除を回避することもできます。

このエラーを引き起こす可能性のある別の問題は、新しいリポジトリに、追加しようとしているディレクトリ/ファイルと同じ名前のファイルまたはディレクトリが既にあることです。名前の競合を避けるために、空のディレクトリにファイルをインポートすることをお勧めします。

したがって、手順を要約すると、次のようになります。

  • 現在のリポジトリからファイルをエクスポートするか、すべての.svnフォルダーを手動で削除します
  • 新しい/ターゲットリポジトリに空のフォルダーを作成します
  • ターゲット リポジトリ フォルダからローカル コピーへのチェックアウトを実行する
  • コミットを実行して、すべての新しいファイルを追加します
于 2012-04-22T06:51:15.907 に答える
2

これらのファイルが既にバージョン管理されている場合、.svn フォルダーを削除しても機能しません。あなたがしなければならないことは次のとおりです。

(1) 問題が発生している、または以前に .svn フォルダーを削除したすべてのフォルダーを削除します。

(2) SVN UPDATE を実行してこれらのフォルダーを再作成し、すべてをそれらに戻します (次のステップでそれらを削除しますが)。

(3) 問題のフォルダを削除します。

(4) SVN コミットを実行します。これにより、リポジトリからのこれらのフォルダーの削除がコミットされます。これで、お望みのようにリポジトリから削除されました。

(5)フォルダーを再度作成して、必要なことを何でもできるようになりました-それらから新しいSVNリポジトリを作成します。または、それらを既存のリポジトリに再度追加します。

手順 (1) から (2) は冗長で不必要に思えるかもしれません。しかし、安全のために、とにかくそれを行うべきです。

于 2012-04-22T07:04:43.693 に答える