連載
オープンソースで始めるバージョン管理&タスク管理

第1回 Subversionを利用したイケてる.NET開発

株式会社アークウェイ 黒石 高広
2008/06/24
Page1 Page2 Page3 Page4

1. はじめに

 本連載では3回にわたって、.NET開発におけるオープンソース・ソフトウェアを活用したバージョン管理、タスク管理について説明する。まず初回となる本編では、バージョン管理ソフトウェアとしてSubversion(サブバージョン)について説明していくわけだが、読者の皆さんは現在どのようなバージョン管理ソフトウェアをお使いだろうか?

 よく利用されているバージョン管理ソフトウェアには、Visual SourceSafeやVisual Studio Team System、CVS、今回説明するSubversionなどがある。読者の中には「バージョン管理ソフトウェアをまったく使っていない」「バージョン管理ソフトウェアを使うと何がうれしいの?」という方も少なくないと思う。そのような方は次のようなシチュエーションを思い浮かべてほしい。

イケテナイ開発の回想シーン:

  世間がゴールデンウィークに浮かれている2008年5月5日(こどもの日)、中堅SIerに勤める中村君(29歳)と玉田君(28歳)は、3カ月にわたる開発プロジェクトを終えて、ついに明日からのサービスインを迎えようとしていた。

中村君「このコードのデプロイが終われば、この開発プロジェクトからもやっと解放されるなぁ。」

玉田君「やっと終わりですねぇー、中村先輩。ほんと、混とんとした3カ月間でしたよ。岡田課長(45歳)は「開発環境なんぞにかける予算はない!!」と言い放って、バージョン管理ソフトウェアさえ購入してくれないし。」

中村君「そうそう。結局ファイル・サーバ上でソース・コードを管理するはめになったな。」

玉田君「プロジェクト1カ月目から投入された新人の長友君(22歳)が、ファイル・サーバにあるソース・コードを間違って削除しちゃたこともありましたね……。」

中村君「あれはきつかったね。おかげでその日1日の実装したコードがすべてパーになったし。でもまぁ、あとはファイル・サーバ上のこのソース・コードをビルドして、本番環境へデプロイさえしちゃえば、おれらの仕事は終わりだ。今日は休みだけど飲みにでも行こうなー。さて、Visual Studioを開いて、ファイル・サーバからダウンロードした最新コードをビルドと……。」

玉田君「先輩……コンパイル・エラーがめちゃめちゃ出力されてますよ……。」

中村君「うそ!? なんでコンパイルできないの? ……。あ、長友君の担当のクラスのインターフェイス古いままじゃん!!」

玉田君「こっちはEmployeeテーブルのMobilePhoneフィールドが存在しませんってエラーが……。これ……データベース・スキーマが古いんじゃないですか? MobilePhoneフィールド追加したのっていつだっけ……。」

中村君「ど、どれが最新のコードなんだ……?」

玉田君「サービスインまで後8時間ですよ、先輩……(涙目)」

 同じようなシチュエーションに悩んでいる開発者の方はすぐにバージョン管理ソフトウェアの導入を検討した方がよい。このようなシチュエーションは、バージョン管理ソフトウェアを“適切に”利用することで回避できる。バージョン管理ソフトウェアは予算の多い少ない、チーム規模、開発技術などにまったく関係なく、どのような開発プロジェクトでも必須のツールなのだ。

 特にSubversionのようなオープンソース・ソフトウェアのバージョン管理ソフトウェアは、学習期間以外に追加のコストが発生しないため、開発環境に大きな予算を割けない開発プロジェクトでは特に重宝されるだろう。もちろんバージョン管理専用のサーバは立てるべきだが、ハードウェアのスペックが低いサーバであっても十分に実用に耐え得る軽さもSubversionの魅力の1つである。

 それでは、前ふりが長くなったがSubversionについて解説していこう。


 INDEX
  [連載]オープンソースで始めるバージョン管理&タスク管理
  第1回 Subversionを利用したイケてる.NET開発
  1.はじめに(バージョン管理ソフトウェアが必要な理由)
    2.バージョン管理ソフトウェア「Subversion」
    3.Windowsエクスプローラ用クライアント「TortoiseSVN」
    4.Visual Studio用クライアント「AnkhSVN」

インデックス・ページヘ  「オープンソースで始めるバージョン管理&タスク管理」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間