*

* SVN Index   * Tips   * Top

Subversion(TortoiseSVN)でファイルやフォルダのリンクを作成する方法(手順)

リンクといっても、コンパイルしたあとのリンクではありません(汗)。 いわゆるショートカットのようなものです(ちょっと違いますが)。 あるファイルまたはフォルダ(ディレクトリ)を、 別の場所や、または、同じ場所でも別の名前で、 全く同じものを置きたいときに使用します。

フォルダ単位のリンクは、以前のSubversionでも可能ですが、 ファイル単位でのリンクができるのは、バージョン1.6以降です。 特に、バイナリファイルの個別のリンクは バージョン1.6.6以降でないとできません。 クライアントはすぐに自分でバージョンアップできるわけですが、 サーバを管理されている方がその気になってくれないことには すぐに使うのは難しいかもしれませんね‥‥。

(ご注意) このページをご利用になった結果の影響については、 一切責任を負いませんので、あらかじめご了承願います。

[フォルダのリンク]

  1. TortoiseSVNを使って、フォルダのリンクを作ってみます。 ここではtrunk以下のdir1フォルダのリンクを、 同じ階層にdir1-linkの名称で作成してみましょう。

  2. まずdir1の親フォルダ(すなわちtrunk)で、 コンテキストメニュー(右クリックメニュー)を出して[属性]を選択します。 dir1が見えている状態で(つまり、trunkフォルダに入って) ファイル以外の空白部分で右ボタンを押しても同じです。

  3. 属性のダイアログが出てきますので、[New]のボタンを押します。

  4. 属性名は、「svn:externals」を選択します。

  5. 属性を記述します。書き方は、リンク元、リンク先、の順です。 dir1と同じ階層にlink-dir1を作成するので、 「dir1 link-dir1」と書きたいところなのですが、 相対パスで「./」から始まる書き方はなぜかありません。 今回は「../」から始まる書き方に従って、 いったん1階層戻って、「../trunk/dir1 link-dir1」と書きましょう。 絶対パスで書いたほうが便利なのであれば、もちろんそれでも結構です。 「再帰的に設定する」はチェックをつけないでください。

  6. [OK]を押して終了です。このあと 更新して、リンクができているかどうかを確認してください。

  7. 確認できたら、忘れずにコミットしてください。

[ファイルのリンク]
  1. 同じように、ファイルのリンクを作ってみます。 dir1/Book1.xlsを、dir2/Book1.xlsへリンクしてみましょう。 dir2は、あらかじめ作成済みのフォルダです。 フォルダの追加の手順はこちらです

  2. 今回はdir2へリンクを作成しますので、dir2で属性を設定します。 この例ではdir2は新規作成したものですが、 もちろん既存のフォルダでもよいです。

  3. ファイルの場合でも、フォルダの場合と書き方は同じです。 dir2から見た相対パスで、「../dir1/Book1.xls Bool1.xls」と 書けばよいです。

  4. これで[OK]を押せば終了です。ただ、この例ではdir2が 新規作成したフォルダであるため、このまま更新してもリンクをたどりません。 いったんコミットしてから更新すれば、 リンクをたどってファイルを取ってくることができるようになります。

[注意]
shacho@critical.ne.jp
Last modified: Wed Jan 06 19:30:00 JST 2010