私はSubversionにかなり慣れておらず、最近、を使用して他のリポジトリに属するファイルを自動的にインポートする方法を学びましたsvn:externals。そして、トランクフォルダーをコミットし、プロジェクトのスナップショットを作成するタグを作成すると、外部として定義されたファイル/フォルダーがタグフォルダーに追加されません。
たとえば、私はこのフォルダ構造を持っています
Z:\ repos \ repoA
Z:\ repos \ repoB
Z:\ Projects \ workB
に設定svn:externalsしZ:\Projects\workBたfile:///Z:/repos/repoA/trunk/lib trunk/libので、repoAのlibフォルダが現在の作業ディレクトリに自動的に追加されますZ:\Projects\workB\trunk。実際に実行するSVN Updateと、トランクフォルダーの下にlibフォルダーが作成されます。
いくつかのファイルを編集して実行SVN Commit...した後、コンテキストメニューからZ:\Projects\workB\trunk選択しました。フィールドに「OK」と入力TortoiseSVN -> Branch/Tagして押します。1.0.1タグが正常に作成されました。To Pathtags/1.0.1
を実行SVN Updateした後Z:\Projects\workB\tags、1.0.1という名前のフォルダーが表示されましたが、外部ファイルはありませんでした。
これは正常ですか?インポートされたファイルも作業ディレクトリのトランクフォルダにあるので、そこにあると思いました。
誰でもこれをテストできるように、Assemblaに2つの公開リポジトリを作成しました。
- https://www.assembla.com/code/subversion-trouble-shooting/subversion/nodes
- https://www.assembla.com/code/subversion-troubleshoot-b/subversion/nodes
lib2番目のリポジトリには、最初のリポジトリからフォルダをプルダウンする外部定義があります。2番目のリポジトリから現在のトランクファイルのタグを作成すると、外部ファイルがタグフォルダに追加されません。また、タグフォルダをチェックアウトすると、外部ファイルがローカルの作業コピーに追加されません。