沼津高専 電子制御工学科
MIRSMG3D EclipseでのSubversionの使用方法
MIRSMG3D-OSIN-0012
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2012.12.13 野澤 牛丸 初版
A02 2012.12.14 野澤 牛丸 2.2.7,2.2.8を訂正
A03 2012.12.17 野澤 牛丸 2.5.競合を追加

目次

 1.はじめに
 2.Eclipseの使用方法
  2.2. チェックアウト
  2.3. アップデート
  2.4. コミット
  2.5. 競合


1.はじめに

本ドキュメントは、EclipseでのSubversionの使用方法をまとめたドキュメントである。


2.Eclipseの使用方法

2.1. 設定

使用環境:演習室PC(Ubuntu)

Eclipseは端末上で以下のように起動してください

  /usr/local/eclipse/eclipse    

はじめて起動するときには以下のように設定してください

[ウィンドウ]→[設定]→[一般]→[ネットワーク接続]にあるアクティブプロバイダーを[ネイティブ]から[直接]に変更

[ウィンドウ]→[パースペクティブのカスタマイズ]をクリックして[コマンド・グループ可用性]の[SVN]にチェックして[OK]

2.2. チェックアウト

Subversionを使用する際にはサーバーにあるプロジェクトを開発PCに取得するためにチェックアウトをする必要がある。チェックアウトは次の手順で行う

2.2.1. ツールウィンドウから[ウィンドウ]を選択→[パースペクティブを開く]→[その他]をクリック→[C/C++]を選択して[OK]をクリック

2.2.2. プロジェクトエクスプローラーで右クリック→[新規]を選択→[その他]をクリック

 

2.2.3. [SVN]を選択→[SVNからプロジェクト]をクリック

 

2.2.4. [新しいリポジトリー・ロケーションを作成]にチェック→[次へ]をクリック

 

2.2.5. URLにhttp://titan.denshi.numazu-ct.ac.jp/svn/[プロジェクト名]を入力→[次へ]をクリック

 

2.2.6. URLが2.2.5で入力したものになっているか確認して[完了]をクリック

 

2.2.7. [選択したリソースの子のプロジェクトを検索]にチェック→[完了]をクリック

 

2.2.8. [プロジェクト名]にチェック→[完了]をクリック

 

以上でサーバー上のプロジェクトにチェックアウトすることができる。

2.3. アップデート

プロジェクトを変更する際には必ず最新のプロジェクトを取得してからでないとチームメンバーが書き換えたものが反映されない。そのため、アップデートをする必要がある。アップデートは次の手順で行う。

プロジェクトエクスプローラーにある[プロジェクト名]を選択して下図の赤丸の部分にある[バージョン管理からリソースを更新]をクリックすることでサーバー上のプロジェクトから更新することができる。

 

2.4. コミット

変更したプロジェクトは全体に反映させるためにサーバーにコミットしなければならない。コミットは次のように行う。ただし、反映させる際には必ずアップデートをしてチームメンバーの変更点との関係を考慮したうえでコミットを行わなければならない。

2.4.1. プロジェクトエクスプローラーにある[プロジェクト名]を選択して下図の赤丸の部分にある[バージョン管理にリソースをコミット]をクリック

 

2.4.2. 編集した内容についてコメントを入れ、サーバー上にコミットするファイルをチェックして[OK]をクリック

 

これでサーバー上のプロジェクトにコミットすることができる。

※アップデートと同様にツリーの一番上にあるプロジェクト名のディレクトリを選択しないとディレクトリ全体がコミットされない。

2.5. 競合

リポジトリのファイルを更新するとき,2 人以上のユーザがファイルの同じ行を変更した場合、競合が発生する可能性があります。競合が発生した場合の解決方法について以下に示す。

1つのファイルを2人が同時に編集しコミットした場合、後からコミットした人に対して競合発生のエラーが表示される。競合が発生した場合、以下のどちらかの方法で競合を解消する。

1. 編集内容を破棄して、最新版を取得し直してもう一度最初からやり直す

 競合が発生したファイルの編集内容をあきらめ、最新版を取得して再度編集を行う。操作は簡単であるが、これまでの編集した内容が無駄になってしまうため、編集箇所が少なくすぐにやり直しができる場合に有効である。

 競合の発生したファイル名の上で右クリックし「チーム」→ 「戻す」(環境により「復元」)を選択すると、リポジトリの最新バージョンに戻すことができる。

 

2. 編集内容と最新版の内容を手作業で統合する

 ローカルのファイルとサーバ上の最新ファイルとを目で較べて編集内容を、最新ファイルに統合する。操作は複雑であるが、編集した内容が無駄にならないため、編集内容が多くやり直しに時間がかかる場合に有効である。

 競合の発生したファイル名の上で右クリックし「チーム」→ 「競合を編集」 (環境により「コンフリクトを編集」) を選択し編集内容を統合する。作業が終わったら、同メニューの「マージ済みとしてマーク」を選択する。競合が解消したことになり、コミットが可能となる。

 

参考
http://www.mlab.im.dendai.ac.jp/~hsaito/serverdesign/prog03/subversion.html
関連文書