Project

General

Profile

SVNの使い方

SVNについてと、Redmineでの利用法を簡単に説明します。

SVNの概念

SVNとはソース管理の仕組みの一つです。
サーバ上のソースコードをローカルに「チェックアウト」して変更し、
再度「チェックイン」でサーバ上に上書きします。
 
この際、「リビジョンID」という連番が付与され、どのリビジョンID
で何を変更しているかといったコメントを付与することが出来ます。

また、リビジョンIDごとのソースの差分の取得、および特定の
リビジョンIDの状態への復元も行うことが出来ます。
 
一般的にSVNは次の構造を持っています。(あくまで暗黙の定義です)

  • プロジェクト名
    • branches
      • 「リリース済み番号」または「特定編集者名」による作業フォルダ
        • 「コンテンツ」
    • tags
      • 正式リリースしたバージョン番号のフォルダ(バージョンごとに残す)
        • 「コンテンツ」
    • trunk
      • 「コンテンツ」
        ビルド可能な最新版リビジョンを配置し、主にここを更新します。
        (これだけtrunk直下にコンテンツを配置します。)

ここでは Redmine との連携を主として記載します。
前提として、SVNクライアント(TortoiseSVNなど)が導入済みとします。

ソフトウェア登録

  1. あらかじめ、TortioseSVNなどで該当リポジトリにコンテンツを
    アップロードしておいて下さい。(ここではNNI_Serverとします)
    リポジトリのアドレスは「https://secure.nanako-net.info/svn」です。

     
  2. プロジェクトのメニューから「設定」を選択します。

     
  3. 設定のタブから「リポジトリ」を選択し、次の設定を行います。
    入力が完了したら「保存」ボタンをクリックします。
    1. バージョン管理システム: Subversion
    2. URL: TortoiseSVNで該当フォルダを選択した時に表示されるURL
    3. ログイン: あなたのNNIアカウントID
    4. パスワード: あなたのNNIアカウントのパスワード

       
  4. プロジェクトのメニューから「リポジトリ」を選択します。
    (初回選択時はデータ登録のため、多少時間がかかります)

     
  5. プロジェクトコンテンツが登録されました!

チェックアウト(最新状態のダウンロード)

  • リポジトリのチェックアウトはTortoiseSVNで行います。
    プロジェクトの「trunk」を右クリックし「チェックアウト」を選択します。
    チェックアウトメニューはそのままOKボタンを選択します。

チェックイン/コミット(編集状態の確定)

  • チェックアウトしたコンテンツを確定するには、チェックアウトした
    ディレクトリを右クリックし「SVNコミット」を選択します。
    コミットする際に、「何を編集したか」コメントを残すことが出来ます。
    これは後述の「過去の状態を取得する」場合に便利となります。

過去のコミット時点の比較と取得

  1. Redmine上の場合、リポジトリメニューでリビジョンIDを選択し
    「差分を見る」ボタンを押すことで、差分を表示することが出来ます。
    また、「全てのリビジョンを見る」を選択すると、過去の編集履歴を
    参照することが出来ます。

     
  2. 過去のバージョンを取得するには、SVNクライアントで対象trunkを
    選択し「ログを表示」を選択します。

     
  3. リビジョンID(コミットした時に振られる固有のID)とコメントや
    Redmineでの差分表示を元に、ダウンロードするリビジョンを選択し
    「リビジョンを保存」を選択します。

     
  4. リポジトリ側の構造を変更した場合、正しく履歴が取得できない
    場合があります。「trunk」内レベル以上のディレクトリ構成の
    変更には十分注意して下さい。(プロジェクト名変更・移動など)

 

戻る