私は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 Path
tags/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
lib
2番目のリポジトリには、最初のリポジトリからフォルダをプルダウンする外部定義があります。2番目のリポジトリから現在のトランクファイルのタグを作成すると、外部ファイルがタグフォルダに追加されません。また、タグフォルダをチェックアウトすると、外部ファイルがローカルの作業コピーに追加されません。