はい、承知いたしました。
初心者向けにVisualSVN Serverのセットアップ手順を徹底解説する、約5000語の詳細な記事を作成します。
【初心者向け】VisualSVN Serverのセットアップ手順を徹底解説
はじめに
「ファイルのバージョン管理」と聞いて、あなたはどんなイメージを持ちますか?「なんだか難しそう」「プログラマーが使う専門的なツールでしょ?」と感じるかもしれません。しかし、バージョン管理はプログラマーだけでなく、デザイナー、ライター、研究者、さらにはチームで企画書を作成するビジネスパーソンにとっても、非常に強力な味方となるツールです。
- 「昨日まで動いていたはずのプログラムが、どこを修正したら動かなくなったのか分からない…」
- 「クライアントからの修正依頼で、ファイル名が『最終版_v3_fix_佐藤修正_確定.docx』のようになり、どれが本当に最新か分からなくなった…」
- 「チームメンバーが同じファイルを同時に編集してしまい、一方の変更が上書きされて消えてしまった…」
このような経験は、誰しも一度はあるのではないでしょうか。バージョン管理システム(VCS: Version Control System)は、こうしたファイル管理にまつわる混乱や事故を防ぎ、作業を安全かつ効率的に進めるための仕組みです。
数あるバージョン管理システムの中でも、古くから多くの現場で使われ、安定性と信頼性に定評があるのが「Subversion(サブバージョン、略称: SVN)」です。そして、そのSVNをWindows環境で驚くほど簡単に、そして直感的に利用できるようにしたものが、今回ご紹介する「VisualSVN Server」です。
この記事は、バージョン管理が初めてという完全初心者の方を対象に、VisualSVN Serverの導入から基本的な使い方までを、一つ一つのステップを丁寧に、豊富な解説と共にガイドすることを目的としています。専門用語はできるだけ避け、必要な場合はその都度かみ砕いて説明しますので、安心して読み進めてください。
この記事を読み終える頃には、あなたは自分自身でバージョン管理サーバーを立ち上げ、ファイルの変更履歴を管理し、チームでの共同作業をスムーズに進めるための第一歩を踏み出していることでしょう。
この記事で解説する内容:
- バージョン管理とVisualSVN Serverの基本: なぜバージョン管理が必要なのか、SVNとVisualSVN Serverがどのようなものかを理解します。
- VisualSVN Serverのインストール: ダウンロードからインストール完了まで、画面キャプチャを交えながら手順を追って解説します。
- サーバーの初期設定と管理: ファイルの保管庫である「リポジトリ」の作成、アクセスする「ユーザー」や「グループ」の管理、そして誰がどこまで操作できるかを決める「アクセス権」の設定方法を学びます。
- クライアントソフト(TortoiseSVN)の導入と基本操作: サーバーと実際にやり取りするためのクライアントソフトをインストールし、「チェックアウト」「コミット」「アップデート」といった基本操作を実践します。
- 応用とトラブルシューティング: サーバーのバックアップ方法や、初心者がつまずきがちな問題とその解決策を紹介します。
さあ、ファイル管理のストレスから解放され、創造的な作業に集中するための旅を始めましょう。
第1章: SubversionとVisualSVN Serverの基本
インストールを始める前に、まずは「なぜこれが必要なのか」「これは一体何なのか」という基本的な部分を理解しておきましょう。この章では、バージョン管理の概念と、Subversion、そしてVisualSVN Serverの役割について解説します。
1.1. バージョン管理システム(VCS)とは?
バージョン管理システム(VCS)とは、その名の通り「ファイルのバージョン(変更履歴)を管理するためのシステム」です。VCSを導入すると、主に以下のようなメリットがあります。
- 変更履歴の記録: ファイルをいつ、誰が、どのように変更したかがすべて記録されます。これにより、「あの機能を追加する前の状態に戻したい」といった場合に、過去の任意の時点へ簡単にファイルを復元できます。
- バックアップ: すべての変更履歴がサーバーに保存されるため、自分のPC上のファイルを誤って削除してしまっても、サーバーから復旧できます。これは、簡易的ながら非常に強力なバックアップ機構として機能します。
- 共同作業の効率化: 複数人で同じプロジェクトのファイルを編集する際、誰がどこを編集しているかが明確になり、他の人の変更を誤って上書きしてしまうといった事故を防ぎます。また、他のメンバーが行った変更を、自分の作業環境に安全に取り込むことができます。
- 変更内容の把握: 他のメンバーがどのような変更を行ったのかを履歴から確認できるため、プロジェクトの進捗や変更の意図を把握しやすくなります。
VCSには大きく分けて「集中管理型」と「分散管理型」の2種類があります。
- 集中管理型 (Centralized VCS): 中心に一つのサーバー(リポジトリ)があり、すべての開発者はそのサーバーに接続して作業します。ファイルの最新版や全ての履歴は、この中央サーバーに集約されています。今回紹介するSubversion (SVN) は、この集中管理型の代表格です。構造がシンプルで、初心者にも理解しやすいのが特徴です。
- 分散管理型 (Distributed VCS): 各開発者が、サーバーの完全なコピー(リポジトリ)を自分のPC上に保持します。オフラインでも履歴の確認や変更の記録ができ、より柔軟な開発スタイルに対応できます。近年主流となっているGit(ギット)がこの分散管理型にあたります。
どちらにも一長一短がありますが、SVNは管理がシンプルで、特定のファイルやフォルダに対するアクセス権を細かく設定できるため、企業の部門内でのドキュメント管理や、厳密な管理が求められるプロジェクトで依然として広く利用されています。
1.2. Subversion (SVN) の特徴
Subversionを理解する上で、いくつかの重要なキーワードがあります。
- リポジトリ (Repository): プロジェクトに関するすべてのファイルと、その変更履歴をまとめて格納しておくための「保管庫」です。通常、サーバー上に置かれます。VisualSVN Serverは、このリポジトリを管理するためのソフトウェアです。
- チェックアウト (Checkout): サーバー上のリポジトリから、自分のPCにプロジェクトのファイル一式をダウンロードしてくる操作です。ダウンロードしてきたファイル群のことを「作業コピー(Working Copy)」と呼びます。
- コミット (Commit): 自分のPC上の作業コピーで行った変更(ファイルの修正、追加、削除など)を、サーバー上のリポジトリに送信し、記録する操作です。コミットする際には、「なぜこの変更を行ったのか」を説明する「コミットメッセージ」を必ず記述します。これが後々の変更履歴を追う上で非常に重要になります。
- アップデート (Update): サーバー上のリポジトリにある最新の状態を、自分のPC上の作業コピーに反映させる操作です。チームで作業している場合、他の人がコミットした変更内容を自分の環境に取り込むために行います。
これらの操作を繰り返すことで、プロジェクトのバージョンが管理されていきます。
また、SVNのリポジトリ内は、慣習的に以下のようなディレクトリ構造で管理されることが一般的です。
- trunk: プロジェクトの「幹」となる部分で、メインで開発が進められる最新のソースコードやファイルが置かれます。
- branches: 「枝」の部分で、trunkから分岐させて、新機能の開発や大規模な修正、バグ修正などを隔離された環境で行うために使います。ここで試行錯誤を行い、完成したらtrunkに統合(マージ)します。
- tags: 特定の時点(例えば「バージョン1.0リリース時」など)のリポジトリ全体の状態を保存しておくための場所です。一度作成したタグは、基本的に変更しません。スナップショットのようなものです。
VisualSVN Serverでは、リポジトリ作成時にこの標準的なディレクトリ構造を自動で作成してくれるため、初心者は迷うことがありません。
1.3. VisualSVN Serverのメリット
Subversion自体はコマンドラインで操作するツールですが、サーバーの構築や設定は初心者にとってハードルが高いものでした。VisualSVN Serverは、その面倒な部分をすべて肩代わりしてくれる、Windowsユーザーにとっての救世主のような存在です。
- 簡単なインストール: 通常であれば複雑な設定が必要なApacheウェブサーバーやSubversion本体のインストール、連携設定などを、ウィザード形式で数クリック行うだけで完了できます。
- GUIによる直感的な管理: リポジトリの作成、ユーザーやグループの管理、アクセス権の設定といったサーバー管理業務のほぼすべてを、グラフィカルな管理画面(VisualSVN Server Manager)から直感的に操作できます。黒い画面(コマンドプロンプト)と格闘する必要はありません。
- HTTPSによるセキュアなアクセス: 標準でSSL/TLSに対応しており、サーバーとクライアント間の通信が暗号化されます。これにより、インターネット経由でも安全にリポジトリへアクセスできます。
- Windows認証との連携: 会社のドメイン(Active Directory)に参加している環境であれば、普段Windowsへのログインに使っているユーザーアカウントでSVNの認証を行うことも可能です(Enterprise Editionの機能)。
特に個人や小規模チームで利用する場合、無償で利用できるStandard Editionで十分すぎるほどの機能が提供されています。この記事では、このStandard Editionを前提に解説を進めていきます。
第2章: VisualSVN Serverのインストール
それでは、いよいよVisualSVN Serverのインストール作業に入ります。ここからは、具体的な手順を一つずつ確認しながら進めていきましょう。
2.1. 事前準備
システム要件の確認
VisualSVN Serverは、比較的新しいWindows OSであれば問題なく動作します。公式サイトで最新のシステム要件を確認するのが確実ですが、一般的に以下のWindowsバージョンに対応しています。
- Windows Server 2012 / 2012 R2 / 2016 / 2019 / 2022
- Windows 8 / 8.1 / 10 / 11
個人で試す場合は、普段お使いのWindows 10や11のPCにインストールしても問題ありません。
インストーラーのダウンロード
-
まず、VisualSVNの公式サイトにアクセスします。
https://www.visualsvn.com/server/download/ -
ダウンロードページが表示されたら、お使いのWindowsが64ビット版か32ビット版かを確認し、対応するインストーラーをダウンロードします。(近年のPCはほとんどが64ビット版です)
Standard EditionとEnterprise Editionの違い
ダウンロードページには「Standard Edition」と「Enterprise Edition」の比較表があります。主な違いは以下の通りです。
-
Standard Edition (無償):
- Subversionの基本的なサーバー機能
- HTTPSアクセス
- GUIによるリポジトリ、ユーザー、グループ管理
- 個人や小規模チームでの利用には、これで十分です。
-
Enterprise Edition (有償):
- Standard Editionの全機能
- Windows認証 (Active Directory連携)
- リポジトリの複数ドメイン管理
- HTML5ベースのWebインターフェース
- リモートサーバー管理機能
この記事では、無償で利用できるStandard Editionをインストールします。ダウンロードするインストーラーは共通で、インストール中にどちらかを選択する形式になります。
2.2. インストール手順(詳細解説)
ダウンロードしたインストーラー(VisualSVN-Server-x.x.x-x64.msi
のようなファイル名)をダブルクリックして、インストールを開始します。
-
Welcome画面
インストーラーが起動すると、最初の画面が表示されます。「Next」をクリックして次へ進みます。 -
ライセンス契約
ライセンス契約書が表示されます。内容を確認し、「I accept the terms in the License Agreement」のチェックボックスをオンにして、「Next」をクリックします。 -
コンポーネントの選択
インストールするコンポーネントを選択する画面が表示されます。ここでは、「VisualSVN Server and Administration Tools」を選択します。もう一方の「Administration Tools Only」は、既にサーバーが別のマシンにインストールされており、その管理ツールだけをインストールする場合に選択します。今回はサーバー本体をインストールするので、前者を選択した状態で「Next」をクリックします。 -
インストールオプションの設定 (最重要)
ここがインストールにおける最も重要な設定画面です。各項目を慎重に設定しましょう。-
Installation location:
VisualSVN Serverのプログラム本体をインストールする場所です。通常はデフォルトのC:\Program Files\VisualSVN Server\
のままで問題ありません。 -
Repositories location:
作成したリポジトリ(ファイルの保管庫)を保存する場所です。ここは非常に重要です。 OSがインストールされているCドライブとは別の、データ用のドライブ(Dドライブなど)がある場合は、そちらを指定することを強く推奨します。なぜなら、リポジトリはプロジェクトの規模が大きくなるにつれて肥大化していくため、OSの領域を圧迫するのを避けるためです。また、万が一OSが起動しなくなっても、データ用ドライブのリポジトリは無事である可能性が高まります。
例:D:\SVNRepositories
-
Server Port:
VisualSVN Serverがクライアントからの接続を待ち受けるポート番号です。デフォルトでは443
(HTTPSの標準ポート) になっています。もし、同じサーバー上でIISなどのWebサーバーがすでにポート443を使用している場合は、ポート番号が競合してエラーになります。その場合は、空いている別のポート番号(例:8443
)に変更してください。特に競合するものがなければ、デフォルトのままで構いません。 -
Authentication:
クライアントがサーバーに接続する際の認証方式を選択します。Use Subversion authentication
VisualSVN Serverが独自にユーザー情報を管理する方式です。ユーザー名とパスワードをVisualSVN Server Managerで作成・管理します。小規模なチームや、Windowsのドメイン環境でない場合は、こちらを選択するのが最も簡単で確実です。今回はこちらを選択します。Use Windows authentication
Windowsのユーザーアカウントで認証する方式です(Enterprise Editionの機能)。
すべての設定が完了したら、「Next」をクリックします。
-
-
インストールの開始
設定内容の確認画面が表示されます。問題がなければ「Install」をクリックして、インストールを開始します。 -
インストールの完了
しばらく待つと、インストールが完了します。「VisualSVN Server Getting Started」のチェックボックスが入ったまま「Finish」をクリックすると、VisualSVN Serverの管理ツールが起動します。
これで、VisualSVN Serverのインストールは完了です。しかし、まだ作業は残っています。
2.3. ファイアウォールの設定
VisualSVN Serverは、指定したポート番号(デフォルトでは443)で外部からの接続を待ち受けます。しかし、Windowsに標準で搭載されている「Windows Defender ファイアウォール」が、この通信をブロックしてしまう可能性があります。
そのため、他のPCからサーバーに接続できるように、ファイアウォールの設定を変更し、指定したポートへの通信を許可する必要があります。
設定手順:
- Windowsのスタートメニューから「
wf.msc
」と入力して検索し、「セキュリティが強化された Windows Defender ファイアウォール」を起動します。 - 左側のペインで「受信の規則」をクリックします。
- 右側の操作ペインで「新しい規則…」をクリックします。
- 「規則の種類」で「ポート」を選択し、「次へ」をクリックします。
- 「プロトコルおよびポート」の画面で、
- 「TCP」を選択します。
- 「特定のローカル ポート」を選択し、テキストボックスにVisualSVN Serverのインストール時に設定したポート番号(例:
443
や8443
)を入力します。 - 「次へ」をクリックします。
- 「操作」の画面で、「接続を許可する」が選択されていることを確認し、「次へ」をクリックします。
- 「プロファイル」の画面で、どのネットワークプロファイルにこの規則を適用するかを選択します。通常は「ドメイン」「プライベート」「パブリック」のすべてにチェックが入ったままで問題ありません。「次へ」をクリックします。
- 「名前」の画面で、この規則に分かりやすい名前を付けます(例:
VisualSVN Server (HTTPS)
)。説明は任意です。 - 「完了」をクリックします。
これで、外部のPCからVisualSVN Serverに接続するための準備が整いました。
第3章: VisualSVN Serverの初期設定と管理
サーバー本体のインストールが完了したら、次はいよいよプロジェクトのファイルを入れておくための「リポジトリ」や、それにアクセスするための「ユーザー」を作成していきます。これらの作業はすべて「VisualSVN Server Manager」という管理ツールで行います。
3.1. VisualSVN Server Managerの起動と画面構成
スタートメニューから「VisualSVN Server Manager」を探して起動します。
画面は大きく分けて2つの領域で構成されています。
- 左側のペイン (コンソールツリー): サーバーの状態や、作成したリポジトリ、ユーザー、グループがツリー構造で表示されます。ここから管理したい項目を選択します。
- 右側のペイン (詳細ビュー): 左側で選択した項目の詳細情報や、実行できる操作が表示されます。
基本的な操作は、左側のツリーで対象の項目を右クリックし、表示されるコンテキストメニューから目的の操作を選択する、という流れになります。
3.2. リポジトリの作成
リポジトリは、プロジェクトのファイルと変更履歴をすべて格納するデータベース、つまり「金庫」のようなものです。プロジェクトごとに1つのリポジトリを作成するのが一般的です。
作成手順:
- 左側のツリーで「Repositories」を右クリックし、「Create New Repository…」を選択します。
- Repository Type
「Regular FSFS repository」が選択されていることを確認します。これは標準的なリポジトリ形式です。 - Repository Name
リポジトリの名前を入力します。プロジェクト名など、分かりやすい名前を付けましょう。ここで入力した名前が、リポジトリにアクセスするためのURLの一部になります。
例:MyProject
- Repository Structure
リポジトリの初期ディレクトリ構造を選択します。Empty repository
: 空のリポジトリを作成します。Single-project repository
:trunk
,branches
,tags
という、Subversionで標準的に使われるディレクトリ構造を自動で作成します。初心者の方は、特別な理由がない限りこちらを選択することを強く推奨します。
- Access Permissions
リポジトリへの初期アクセス権を設定します。後から詳細に設定できるので、ここでは一旦「Empty permissions (repository will not be accessible)」を選択し、誰もアクセスできない状態で作成するのが安全です。 - 「Create」をクリックすると、リポジトリが作成されます。
作成が完了すると、左側の「Repositories」ツリーの下に、今作成した「MyProject」リポジトリが表示されます。リポジトリ名をクリックすると、右側のペインにリポジトリのURL(Repository URL
)が表示されます。このURLは、後ほどクライアントから接続する際に使用するので、覚えておきましょう。
例: https://<サーバー名>/svn/MyProject/
3.3. ユーザーの作成
次に、リポジトリにアクセスするためのユーザーアカウントを作成します。
作成手順:
- 左側のツリーで「Users」を右クリックし、「Create User…」を選択します。
- ダイアログが表示されたら、「User name」と「Password」、「Confirm password」を入力します。
- 「OK」をクリックすると、ユーザーが作成されます。
チームメンバーの分など、必要なだけこの作業を繰り返してユーザーを作成します。
3.4. グループの作成
プロジェクトのメンバーが複数人いる場合、一人ひとりにアクセス権を設定していくのは非常に手間がかかります。そこで便利なのが「グループ」機能です。例えば、「developers」というグループを作成し、そこに開発メンバーのユーザーを追加しておけば、後は「developers」グループに対してアクセス権を設定するだけで、所属メンバー全員に同じ権限を適用できます。
作成手順:
- 左側のツリーで「Groups」を右クリックし、「Create Group…」を選択します。
- 「Group name」にグループ名(例:
developers
,designers
)を入力します。 - 「Members」の欄にある「Add…」ボタンをクリックします。
- 先ほど作成したユーザーの一覧が表示されるので、このグループに追加したいユーザーを選択し、「OK」をクリックします。
- 「OK」をクリックすると、グループが作成されます。
3.5. アクセス権の設定
リポジトリ、ユーザー、グループが準備できたので、最後に「誰が」「どこに」「何をできるか」を設定する、アクセス権の設定を行います。Subversionの強力な機能の一つが、この詳細なアクセス権設定です。リポジトリ全体だけでなく、特定のフォルダやファイル単位で権限をコントロールできます。
設定手順:
- アクセス権を設定したい対象(リポジトリ全体、または特定のフォルダ)を左側のツリーで選択します。ここでは、先ほど作成した「MyProject」リポジトリ全体に設定してみましょう。「MyProject」を右クリックし、「Properties…」を選択します。
- プロパティ画面が開くので、「Security」タブをクリックします。
- 「Add…」ボタンをクリックします。
- 先ほど作成したユーザーやグループの一覧が表示されます。権限を設定したいユーザーまたはグループ(例:
developers
グループ)を選択し、「OK」をクリックします。 - 一覧に
developers
グループが追加されます。次に、このグループに与える権限を「Permissions」の欄で設定します。権限には以下の3種類があります。No Access
: アクセス不可(デフォルト)Read Only
: 読み取り専用(チェックアウトや更新はできるが、コミットはできない)Read / Write
: 読み書き可能(すべての操作が可能)
developers
グループの権限を「Read / Write」に変更します。
- 「Apply」を押し、最後に「OK」をクリックして設定を完了します。
これで、「developers
グループに所属するユーザーは、MyProject
リポジトリに対して自由に読み書きができる」という設定が完了しました。
同様の手順で、例えば「管理者はリポジトリ全体を読み書き可能」「デザイナーはimages
フォルダのみ読み書き可能」といった、プロジェクトの運用に合わせた柔軟な権限設定が可能です。
第4章: TortoiseSVNクライアントの導入と基本操作
サーバー側の準備はすべて整いました。しかし、サーバーがあるだけではバージョン管理はできません。サーバー上のリポジトリと実際にファイルのやり取りをするための「クライアントソフトウェア」が、自分のPCに必要です。
Windows環境で最も有名で、広く使われているSVNクライアントが「TortoiseSVN」です。
4.1. SVNクライアントとは?
SVNクライアントは、ユーザーがSubversionサーバーと対話するためのツールです。TortoiseSVNの最大の特徴は、Windowsのシェル(エクスプローラー)に統合される点です。これにより、専用のアプリケーションを起動することなく、いつも使っているフォルダーやファイルを右クリックするだけで、チェックアウトやコミットといったSVNのすべての操作を実行できます。アイコンオーバーレイ機能により、ファイルのバージョン管理状態(変更済み、最新、競合など)が一目でわかるのも非常に便利です。
4.2. TortoiseSVNのインストール
-
インストーラーのダウンロード:
TortoiseSVNの公式サイトにアクセスします。
https://tortoisesvn.net/downloads.html
お使いのWindowsに合わせて、64ビット版または32ビット版のインストーラーをダウンロードします。 -
日本語言語パックのダウンロード:
同じページに言語パック(Language packs)があります。日本語で使いたい場合は、「Japanese」の言語パックもダウンロードしておきましょう。 -
TortoiseSVN本体のインストール:
ダウンロードしたTortoiseSVNのインストーラーをダブルクリックして実行します。基本的にウィザードの指示に従い、「Next」をクリックしていけば問題なくインストールできます。途中で特に設定を変更する必要はありません。インストールが完了したら、PCの再起動を求められることがありますので、その場合は再起動してください。 -
日本語言語パックのインストール:
次に、ダウンロードした日本語言語パックのインストーラーを実行します。こちらも「次へ」をクリックしていくだけで完了します。 -
日本語設定への変更:
デスクトップの何もないところを右クリックし、「TortoiseSVN」→「Settings」を選択します。
設定画面が開いたら、左側の「General」を選択し、右側の「Language」ドロップダウンリストから「日本語 (日本)」を選択して「OK」をクリックします。これで、右クリックメニューなどが日本語で表示されるようになります。
4.3. リポジトリへの接続 (チェックアウト)
いよいよサーバーに接続し、プロジェクトのファイルを手元に持ってきます。この操作を「チェックアウト」と呼びます。
-
作業コピー用のフォルダを作成:
まず、エクスプローラーで、プロジェクトのファイルを保存しておくための空のフォルダを好きな場所に作成します。(例:C:\work\MyProject
) -
チェックアウトの実行:
作成した空のフォルダ(MyProject
)を右クリックし、メニューから「SVN チェックアウト…」を選択します。 -
チェックアウト情報の設定:
チェックアウトのダイアログが表示されます。- リポジトリのURL:
ここに、VisualSVN Server Managerで確認したリポジトリのURLを入力します。
例:https://<サーバー名>/svn/MyProject/trunk
(通常はtrunk
ディレクトリをチェックアウトします) - チェックアウト先のディレクトリ:
自動的に、右クリックしたフォルダのパスが入力されています。
入力したら「OK」をクリックします。
- リポジトリのURL:
-
認証:
初めてそのサーバーに接続する場合、認証情報を求めるダイアログが表示されます。VisualSVN Serverで作成したユーザーの「ユーザー名」と「パスワード」を入力します。今後も同じ情報を使う場合は、「認証情報を保存する」にチェックを入れておくと、次回から入力を省略できます。 -
チェックアウト完了:
認証が成功すると、サーバーからファイルのダウンロードが開始されます。(今回はtrunk
フォルダなどが作成されただけの空の状態なので、すぐに完了します)。
完了画面が表示されたら「OK」をクリックして閉じます。
エクスプローラーで作業フォルダを見てみましょう。フォルダのアイコンに緑色のチェックマークが付いているはずです。これが「このフォルダはバージョン管理されており、現在の状態はサーバーと同一(最新)です」という印です。
4.4. 基本的なSVN操作
これで、バージョン管理を始める準備ができました。日常的に行う基本的な操作サイクルを見ていきましょう。
1. ファイル/フォルダの追加 (Add)
作業フォルダ内に新しいファイル(例: test.txt
)を作成してみましょう。
作成した直後のファイルには、アイコンに青い「?」マークが付いています。これは「このファイルはバージョン管理の対象外です」という意味です。
このファイルをバージョン管理に加えるには、
1. test.txt
を右クリックし、「TortoiseSVN」→「追加」を選択します。
2. 確認ダイアログが表示されたら「OK」をクリックします。
すると、アイコンが青い「+」マークに変わります。これは「このファイルは次回のコミットでサーバーに追加されます」という意味です。
2. 変更のコミット (Commit)
作業フォルダ内のファイル(test.txt
など)を編集して保存してみましょう。すると、そのファイルのアイコンが緑色のチェックマークから、赤色の「!」マークに変わります。これは「このファイルはサーバー上の最新版から変更されています」という印です。
この変更をサーバー上のリポジトリに記録する操作が「コミット」です。
- 変更をコミットしたいファイル、またはフォルダ全体を右クリックし、「SVN コミット…」を選択します。
- コミットのダイアログが表示されます。
- メッセージ (Message):
上部の大きなテキストボックスに、「なぜこの変更を行ったのか」を具体的に記述します。例えば「初期テスト用のファイルを追加」「〇〇に関する仕様書を追記」など。このコミットメッセージは、後から変更履歴を確認する際に非常に重要な手がかりとなります。絶対に空欄のままコミットしないでください。 - 変更されたファイル (Changes made):
下部には、変更があったファイルの一覧が表示されます。コミットしたいファイルにチェックが入っていることを確認します。
- メッセージ (Message):
- メッセージを記述したら、「OK」をクリックします。
- 認証を求められた場合は、ユーザー名とパスワードを入力します。
- コミットが成功すると、完了画面が表示され、ファイルのアイコンが再び緑色のチェックマークに戻ります。これで、あなたの変更がサーバーに安全に記録されました。
3. サーバーからの更新 (Update)
チームで作業している場合、あなたが作業している間に、他のメンバーが変更をコミットしているかもしれません。他の人の変更内容を自分の作業コピーに反映させる操作が「アップデート」です。
作業を始める前や、コミットを行う前には、必ずアップデートを実行する癖をつけましょう。 これを怠ると、自分の変更と他の人の変更が衝突(競合)する原因になります。
- 作業フォルダを右クリックし、「SVN 更新」を選択します。
- サーバーに新しい変更があれば、その内容がダウンロードされ、あなたの作業コピーに適用されます。変更がなければ、最新の状態であることが表示されます。
4. 変更履歴の確認 (Show Log)
バージョン管理の醍醐味の一つが、変更履歴の確認です。
- 履歴を見たいファイルまたはフォルダを右クリックし、「TortoiseSVN」→「ログを表示」を選択します。
- ログビューアが起動し、これまでのコミット履歴が一覧で表示されます。
- 各行が1回のコミットに対応しており、リビジョン番号、コミットした人、日時、そしてコミットメッセージが表示されます。
- 特定のコミットを選択すると、そのコミットでどのファイルがどのように変更されたのかを下のペインで確認できます。
- ファイル名をダブルクリックすれば、変更前と変更後の差分を比較するツールが起動します。
これにより、「いつ、誰が、何を、なぜ変更したのか」をいつでも追跡することができます。
第5章: 応用とトラブルシューティング
基本的な操作をマスターしたら、最後にサーバーの運用で重要になるバックアップと、初心者が遭遇しがちな問題について触れておきます。
5.1. バックアップとリストア
リポジトリには、プロジェクトの大切な資産である全ての履歴が詰まっています。サーバーのディスク障害などに備え、定期的にリポジトリのバックアップを取得することは絶対に不可欠です。
VisualSVN Serverには、バックアップとリストアを簡単に行うためのコマンドが用意されています。
バックアップの取得 (コマンドプロンプトで実行):
"C:\Program Files\VisualSVN Server\bin\VisualSVNServer.exe" backup --repo <リポジトリ名> --file <バックアップファイルパス>
例:
"C:\Program Files\VisualSVN Server\bin\VisualSVNServer.exe" backup --repo MyProject --file D:\Backup\MyProject.bak
このコマンドをタスクスケジューラなどに登録し、毎日深夜に自動実行するように設定しておくのが一般的です。
リストア (復元):
新しいサーバーにVisualSVN Serverをインストールした後、以下のコマンドでバックアップファイルからリポジトリを復元できます。
"C:\Program Files\VisualSVN Server\bin\VisualSVNServer.exe" restore --file <バックアップファイルパス>
5.2. よくある質問 (FAQ) とトラブルシューティング
-
Q: クライアントからサーバーに接続できません。
- A1: ファイアウォールの設定を確認してください。 第2章で解説したファイアウォールの設定で、VisualSVN Serverが使用するポート(443や8443など)が許可されているか再確認してください。
- A2: URLが間違っていませんか?
https://
, サーバー名(またはIPアドレス), ポート番号(443以外の場合)、リポジトリのパスが正しいか確認してください。 - A3: サーバーは起動していますか? Windowsのサービス管理画面を開き、「VisualSVN Server」サービスが実行中になっているか確認してください。
-
Q: 認証に失敗します。
- A: ユーザー名とパスワードが正しいか確認してください。 VisualSVN Server Managerで設定したものを正確に入力していますか? 大文字小文字も区別されます。TortoiseSVNに保存された認証情報が古い場合は、TortoiseSVNの設定画面から認証データをクリアすることで、再入力のダイアログを表示できます。
-
Q: チェックアウト時に「SSL certificate validation failed」のようなエラーが表示されます。
- A: VisualSVN Serverがインストール時に作成するSSL証明書は「自己署名証明書(オレオレ証明書)」であるため、クライアントが初回接続時に警告を表示します。これは正常な動作です。ダイアログで証明書の内容を確認し、「永続的に承認する(Accept permanently)」を選択すれば、次回以降は表示されなくなります。
-
Q: コミットしようとすると「out of date」というエラーが出ます。
- A: あなたが最後にアップデートしてから、他の誰かが同じファイルをコミットしたことを意味します。あなたの作業コピーがサーバーの最新状態ではないため、そのままではコミットできません。まず「SVN 更新」を実行して他の人の変更を取り込み、必要であれば変更箇所をマージ(統合)してから、再度コミットしてください。
おわりに
この記事では、バージョン管理の初心者の方を対象に、VisualSVN Serverのインストールからサーバー設定、そしてTortoiseSVNを使った基本的なクライアント操作までを、一通り解説しました。
最初は覚えることが多くて大変に感じるかもしれませんが、実際に手を動かして「チェックアウト → ファイル編集 → コミット → アップデート」というサイクルを何度か繰り返せば、すぐに慣れるはずです。
バージョン管理を導入することで得られる「いつでも過去に戻れる安心感」と「チーム作業の透明性」は、一度体験すると手放せなくなるほど強力です。ファイル名に日付やバージョン番号を付けて手動で管理していた頃の煩わしさや危険性には、もう戻れなくなるでしょう。
今回学んだのは、バージョン管理の入り口に過ぎません。Subversionには、今回詳しく触れなかった「ブランチ」や「マージ」といった、より高度で便利な機能がたくさんあります。まずはtrunk
での基本的な運用に慣れ、自信がついたらぜひこれらの機能の学習にも挑戦してみてください。
この記事が、あなたのプロジェクト管理をより安全で、より効率的なものにするための一助となれば幸いです。バージョン管理の世界へようこそ!