バージョン管理システム

バージョン管理システム(Version Control System)

バージョン管理システムの基本的な利用方法は以下の流れになる。
  1. ファイルをリポジトリに登録する。
  2. ファイルをリポジトリからローカル環境に取り出す(チェックアウト)
  3. ローカル環境で、ファイルに対し変更を行う。
  4. 変更したファイルをリポジトリに書き戻す(チェックイン)
ファイルがチェックインされると、システムによって「いつ」「誰が」「どんな変更を行った」等が記録され、後から参照できる。また必要に応じて古い版を取り出すことも出来る。 (バージョン管理システム, Wikipedia)

バージョン管理システムは、他にもCSVやSVNと言ったものが知られています。

開発手順の違い

開発手順の違いを説明します。図を見てください
[全体の流れ.png]
従来の手順に『コミット』が追加されただけです。例を出して順番に説明します。

「素数を小さい順で表示するプログラム」を作成することにします。

設計 -> 簡単にいえば「どういうプログラムにするか」です。(プロジェクト単位の話で言えば開発言語から考えるのですが、今回は大学演習でのプログラム開発(言語が決まっている状態)での話をします。)素数は「1 と自分自身以外に正の約数を持たない自然数で、1 でない数」であるので、2から順番にインクリメントを行い、1つずつ素数かどうかを確認して、素数ならば出力、そうでないならば次の数を調べていくことをすれば、素数を小さい順で羅列することが出来るでしょう。

開発 -> 実際にプログラムを書いて行きます。C言語で書くとすると、最初にincludeを行い、main文を作り、必要な変数を宣言します。変数の初期化を行った後、for文またはwhile文で・・・、という感じで設計に沿ってコーディングを行いましょう。

テスト -> コーディングが終われば、きちんと動くかどうか実際に動かしてテストを行います。実際に動けば成功、動かなければバグ取り(デバッグ)を行ってください。

コミット -> きちんと動くコードが書けたらコミットを行います。コミットは (1)どのファイルをコミットするか[add] (2)コミットを実行[commit]の手順で行います。

グループでの開発手順

以上に加えて、今回はグループでの開発になります。VCSを使うメリットを確認して下さい。

従来のグループ開発

      1. Eclipseで開発を行う。(設計→開発→テスト)
      2. 手動でプログラムの統合(差分の変更の修正などを行うこと・マージ)を行う。
    

VCSを使ったグループ開発

      1. Eclipseで開発を行う。(設計→開発→テスト)
      2. VCSで状態の保存(コミット)を行う。
      3. VCSで自動統合(マージ)を行う。
    

グループ開発での重要なポイントは「個人が作成したプログラムを統合すること」になります。 VCSを使えば、バックアップを取るだけでなく、個人が行った変更も自動で統合してくれるので、 グループ開発ではVCSを使うことはとても有効です。VCSをぜひ活用して開発を効率的に行いましょう。
また、今回のGitを使った開発ではブランチとマージを使った開発をしていただきます。
今回の開発の仕方については使い方の説明ページで説明します。

ページのトップへ戻る