マニュアル

テストドライブ

このセクションでは、小さなテストリポジトリで最もよく使用される機能を試す方法を紹介します。当然のことながら、すべてを説明するわけではありません。これはあくまでもクイックスタートガイドです。使い方がわかったら、このユーザーガイドの残りの部分を読んで、より詳細な内容を理解してください。適切なSubversionサーバーのセットアップ方法についても詳しく説明しています。

リポジトリの作成

実際のプロジェクトでは、安全な場所にリポジトリをセットアップし、それを制御するSubversionサーバーを用意します。このチュートリアルでは、サーバーを必要とせずにハードドライブに作成されたリポジトリに直接アクセスできる、Subversionのローカルリポジトリ機能を使用します。

まず、PC上に新しい空のディレクトリを作成します。どこに配置しても構いませんが、このチュートリアルではC:\svn_reposとします。新しいフォルダを右クリックし、コンテキストメニューからTortoiseSVNここにリポジトリを作成...を選択します。すると、フォルダ内にリポジトリが作成され、使用できるようになります。フォルダ構造を作成ボタンをクリックして、デフォルトの内部フォルダ構造も作成します。

重要

ローカルリポジトリ機能はテストと評価には非常に便利ですが、1台のPCで単独の開発者として作業している場合を除き、常に適切なSubversionサーバーを使用する必要があります。小規模な会社では、サーバーのセットアップ作業を避け、ネットワーク共有上のリポジトリにアクセスしたくなるかもしれません。絶対にそうしないでください。データが失われます。これがなぜ悪い考えなのか、そしてサーバーをセットアップする方法については、「ネットワーク共有上のリポジトリへのアクセス」を参照してください。

プロジェクトのインポート

これでリポジトリができましたが、今は完全に空です。C:\Projects\Widget1にあるファイルセットを追加したいとします。エクスプローラでWidget1フォルダに移動し、右クリックします。次に、TortoiseSVNインポート...を選択すると、ダイアログが表示されます。

図 1.2. インポートダイアログ

The Import dialog


SubversionリポジトリはURLで参照されるため、インターネット上のどこにでもリポジトリを指定できます。この場合、URLがfile:///c:/svn_repos/trunkである独自のローカルリポジトリを指す必要があり、それに独自のプロジェクト名Widget1を追加します。file:の後にスラッシュが3つあり、全体にスラッシュが使用されていることに注意してください。

このダイアログのもう1つの重要な機能は、インポートメッセージボックスです。これにより、何をしているかを説明するメッセージを入力できます。プロジェクトの履歴を確認すると、これらのコミットメッセージは、どのような変更が加えられ、なぜ変更されたのかを知るための貴重なガイドとなります。この場合は、Widget1プロジェクトをインポートのように簡単なメッセージを入力できます。OKをクリックすると、フォルダがリポジトリに追加されます。

作業コピーのチェックアウト

リポジトリにプロジェクトができたので、日々の作業に使用する作業コピーを作成する必要があります。フォルダをインポートするだけでは、そのフォルダが自動的に作業コピーになるわけではないことに注意してください。新しい作業コピーを作成するためのSubversion用語はチェックアウトです。リポジトリのWidget1フォルダを、PC上のC:\Projects\Widget1-Devという開発フォルダにチェックアウトします。そのフォルダを作成し、右クリックしてTortoiseSVNチェックアウト...を選択します。次に、チェックアウトするURL(この場合はfile:///c:/svn_repos/trunk/Widget1)を入力し、OKをクリックします。すると、開発フォルダにリポジトリのファイルが取り込まれます。

重要

デフォルト設定では、チェックアウトメニュー項目はTortoiseSVNサブメニューにはなく、エクスプローラメニューの上部に表示されます。サブメニューにないTortoiseSVNコマンドには、SVNが前に付いています:SVN チェックアウト...

このフォルダの外観は元のフォルダとは異なっていることに気付くでしょう。すべてのファイルの左下に緑色のチェックマークが付いています。これらはTortoiseSVNのステータスアイコンで、作業コピーにのみ存在します。緑色の状態は、ファイルがリポジトリのバージョンから変更されていないことを示します。

変更を加える

作業に取り掛かりましょう。Widget1-Devフォルダでファイルの編集を開始します。たとえば、Widget1.cReadMe.txtを変更します。これらのファイルのアイコンオーバーレイが赤色に変わっていることに注目してください。これは、ローカルで変更が行われたことを示しています。

しかし、変更点は何でしょうか?変更されたファイルの1つを右クリックし、TortoiseSVN比較を選択します。TortoiseSVNのファイル比較ツールが起動し、変更された行が正確に表示されます。

図 1.3. ファイル比較ビューア

File Difference Viewer


変更に問題がなければ、リポジトリを更新しましょう。この操作は、変更のコミットと呼ばれます。Widget1-Devフォルダを右クリックし、TortoiseSVNコミットを選択します。コミットダイアログには、変更されたファイルがチェックボックス付きで一覧表示されます。これらのファイルのサブセットのみを選択することもできますが、この場合は両方のファイルの変更をコミットします。変更内容を説明するメッセージを入力し、OKをクリックします。進捗ダイアログに、リポジトリにアップロードされているファイルが表示され、完了です。

ファイルの追加

プロジェクトの開発が進むにつれて、新しいファイルを追加する必要があります。たとえば、Extras.cに新しい機能を追加し、既存のMakefileに参照を追加するとします。フォルダを右クリックし、TortoiseSVN追加を選択します。追加ダイアログに、バージョン管理されていないすべてのファイルが表示され、追加するファイルを選択できます。ファイルを追加する別の方法は、ファイル自体を右クリックしてTortoiseSVN追加を選択することです。

フォルダをコミットしようとすると、新しいファイルは追加済みと表示され、既存のファイルは変更済みと表示されます。変更されたファイルをダブルクリックすると、どのような変更が行われたかを正確に確認できます。

プロジェクト履歴の表示

TortoiseSVNの最も便利な機能の1つは、ログダイアログです。これにより、ファイルまたはフォルダに加えられたすべてのコミットのリストと、入力した詳細なコミットメッセージが表示されます(提案どおりにコミットメッセージを入力しましたか?そうでない場合、これがなぜ重要なのかがわかるでしょう)。

図 1.4. ログダイアログ

The Log Dialog


さて、ここで少しずるをして、TortoiseSVNリポジトリのスクリーンショットを使用しました。

上部ペインには、コミットされたリビジョンのリストとコミットメッセージの先頭が表示されます。これらのリビジョンの1つを選択すると、中央ペインにはそのリビジョンの完全なログメッセージが表示され、下部ペインには変更されたファイルとフォルダのリストが表示されます。

これらの各ペインにはコンテキストメニューがあり、情報を活用するためのさまざまな方法が提供されています。下部ペインでファイルをダブルクリックすると、そのリビジョンで行われた変更を正確に確認できます。詳細については、「リビジョンログダイアログ」を参照してください。

変更の取り消し

すべてのリビジョン管理システムの機能の1つは、以前に行った変更を取り消せることです。ご想像のとおり、TortoiseSVNではこの機能に簡単にアクセスできます。

まだコミットしていない変更を取り除き、編集を開始する前の状態にファイルをリセットしたい場合は、TortoiseSVN元に戻すが便利です。これは変更を破棄し(念のためごみ箱に移動します)、最初に開始したコミット済みバージョンに戻します。変更の一部だけを取り除きたい場合は、TortoiseMergeを使用して差分を表示し、変更された行を選択的に元に戻すことができます。

特定のリビジョンの影響を取り消したい場合は、ログダイアログから開始し、問題のリビジョンを見つけます。コンテキストメニューこのリビジョンからの変更を元に戻すを選択すると、これらの変更が取り消されます。

TortoiseSVNホームページ