Windowsマシンでsvn:externals
にTortoiseSVNを設定しようとしています。 2つのプロジェクトがあり、両方のリポジトリがすでに同じローカルマシン上に作成されています。WindowsのTortoiseSVNでのSVNの設定
現在の構造は次のようになります。リポジトリの場合はrepoA
、repoB
、作業ディレクトリ(チェックアウト)の場合はworkA
とworkB
を作成しました。
リポジトリ
Z:\レポ\ repoA
Z:\レポ\ repoB
作業ディレクトリ
Z:\プロジェクト\ workA \ trunk \ core.php
Z:プロジェクト\ \ workA \トランク\ libに\ lib01.php
Z:\プロジェクト\ workB \トランク\のcore_mod.php
Z:プロジェクト\ \ workB \トランク\ libに\
この場合でworkA\trunk\lib\
下
(そこtags
とbranches
フォルダがあるが、それらは、簡単な質問を保つために省略されている。)私が達成したい何
は、ファイル(複数可)でありますはworkB\trunk\lib\
ディレクトリに自動的にコピーされます。
- が
workA
をチェックアウトしrepoA
にそれを割り当てられ、workB
をチェックアウトし、repoB
- Comitted
workA\trunk
フォルダに割り当てられ、次のように私がやったこれを設定するためには、あります
repoA
は最新です。 workB\trunk\lib
のインポート先を割り当てるには、workB
フォルダを右クリックし、TortoiseSVN -> Properties
を選択します。New -> Externals
をクリックしてNew...
が
Local path
フォームフィールドで./trunk/lib
を入力したクリック。URL
フィールドには、file:///Z:/repos/repoA/trunk/lib
と入力します。...
ボタンを押すと、repo-browserが開き、ターゲットフォルダを選択するのに役立ちました。設定ウィンドウを閉じるために
Ok
数回クリックしました。私は外部設定が行われたと仮定した。ファイル、Z:\Projects\workB\trunk\core_mod.php
- 右を作成し
- は
Z:\Projects\workB\trunk\
をクリックしてworkB
repoB
にしCOMITするSVN Comit
を選択しました。
この時点で、lib01.phpは自動的にZ:\Projects\workB\trunk\lib
フォルダにインポートされますが、何もコピーされません。またworkB\trunk
フォルダを右クリックしてSVN Update
を試しました。しかし、workB\trunk\lib
フォルダは空のままです。
相対パス./trunk/lib
が間違っていると思われます。知りません。私が間違っていることを指摘できれば、それは感謝します。
更新
6A -
これは私にとって死角だったがレポするように変更作業コピーWorkBをコミットします。 Z:\Projects\workB
を右クリックしてSVN Commit...
を選択すると、次のエラーが発生しました。
すぐにOKボタンをクリックした後、私は、フォルダを更新するかどうかを尋ねるダイアログウィンドウを持って、私は[OK]をクリックします。その後、TortoiseSVNはZ:\Projects\workB
の更新を開始しましたが、このエラーが発生しました。しかしその後、私がZ:\Projects\workB
を再コミットしたとき、それはエラーなく通過しました。
(あなたのケースでは、 "トランク/ libには" より防弾なり、私は考えます)。私は
workB
フォルダのProperty
を再選択し、svn:externals
ためEdit
ボタンをクリック
おかげで、TortoiseSVNは自動的にtrunk/lib
に./trunk/lib
を調整しました。今それはそうに設定されています。
図6b - RepoB上repobrowserとテスト(単に最速の方法)、その定義が正しい
である私は、右Z:\repos\repoB
をクリックしてTortoiseSVN -> repo-browser
を選んだとトランクフォルダまで閲覧。それは次のように見えます。それは正しいか?私はこの仕事をしたことがないので、実際には分かりません。トランクフォルダの下にあるlibフォルダは、リポジトリブラウザでは空です。
Z:\Projects\workB\trunk\lib
フォルダが空のままです。エラーメッセージは、 'Z:\ Projects \ workB'の位置を変更することを示唆していますが、その意味がわかりません。
レポBroswerが示す**トランク内の2つの**のlibフォルダ - 1の外部と1つの本当の(必要ではない) - それは問題です。レポの現在の状態を見るために、トランクの新鮮なチェックアウト(外部と完全に再帰的)を試してください –
'Repo-Broswerはトランクの内側に2つのlibフォルダを表示します - 1つは外部であり、もう1つはリアルではありません - それは問題です。 。ありがとう。リポジトリブラウザの 'Z:\ Projects \ workB \ trunk \ lib'に実際の' lib'フォルダを削除し、 'Z:\ Projects \ workB'で' SVN Update'を実行しました。これで 'Z:\ Projects \ workB \ trunk \ lib \ lib01.php'が自動的に作成されました。これは解決すべき長い旅でした。 – Teno