SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Team Foundation Serverを使ってみよう

Team Foundation Serverでソースコード管理を効率化

Team Foundation Serverを使ってみよう(2)


チェックインに条件をつけよう!

 他の人がチェックインしたコードを見たとき、「規約をちゃんと守って!」「バグだらけのコードをチェックインしないで!」「このコードってどの部分を実装してるんだっけ?」などと思うことありませんか。

 TFSではこんな悩みをサポートする、チェックインポリシー機能が用意されています。チェックインポリシーとは条件を満たさないコードをチェックインさせない機能で、TFSの標準機能では以下の3つの条件を設定することができます。

  • コード分析必須(VSTSの静的コード分析をクリアすることが必須)
  • 単体テスト必須(VSTSの単体テストを成功させることが必須)
  • 作業項目との関連付け必須(TFSの作業項目との関連付けが必須)

 「標準機能では」としたのは、このチェックインポリシーは独自に作成して、自由に追加していくことができるからです。カスタムチェックインポリシーを作成する方法は本稿では割愛しますが、あまり簡単ではありません。コミュニティーベースでは、例えばCodePlexTFS Code Comment Checking Policy(CCCP)のように、いくつか公開されているものがあります。興味がある場合には一度これらを参考にしてみてください。

 では、チェックインポリシーを早速設定してみましょう。

  1. [チームエクスプローラー]のチームプロジェクトを右クリックし、[チームプロジェクトの設定]-[ソース管理]を選択。
  2. ソース管理の設定画面で、[チェックインポリシー]タブ内の[追加]を選択。
  3. 「コード分析」「テストポリシー」「作業項目」のうち、追加したいチェックインポリシーを選択(図8)。
図8 チェックインポリシー選択画面
 図8 チェックインポリシー選択画面

 これで悩みが減ると考えられます。しかし、「コード分析を必須にしたら、テストコードまで規約通りに書かないといけないの? それはちょっと……」と思うこともあるでしょう。実はチェックインポリシーを無視することもできてします。無視するためにはどうしてポリシーに従っていないのかの理由を記述しなければなりませんが、うまく切り分けて使ってください。

 なお、チェックインポリシーを利用してコード分析を実行するには、クライアント端末にVSTD(Visual Studio 2005 Team Edition for Software Developers)が、テストポリシーを実行する場合には、VSTT(Visual Studio 2005 Team Edition for Software Testers)がインストールされている必要があります。

作業報告とコードを関連付けよう!

 「チェックインに条件をつけよう!」で、「作業項目との関連付け」という条件がありましたが、TFSで言う作業項目とは簡単にいうと作業予定や作業報告、進捗状況を入力しておくものです。担当者や進捗、履歴などを保存しておくことができます。チェックインを行う際に、このコードはこの作業項目の内容なんだよ、と印をつけておくことで、他者から見ても作業の進捗を把握しやすくなります。では早速使ってみましょう。

  1. 作業項目を作成する。
  2. 「ソリューションエクスプローラー」で、黄色の「+」が付いているファイルを選択して「チェックイン」。
  3. チェックイン画面で[作業項目]を押下。
  4. 関係のある作業項目にチェックをつけて「チェックイン」。
図9 作業項目の選択画面
 図9 作業項目の選択画面

 これで作業項目に関連付けが行われました。いつ、どのコードと関連付けられたかは作業項目の「履歴」から参照することができます。チームプロジェクトを作成した際に「MSF for Agile Software Development - v4.0 - JPN」を選択していると思いますが、これを利用してチームプロジェクトを作成した場合には、デフォルトでいくつかの作業項目が生成されています。今回は練習ですので標準で作成されている作業項目に関連付けを行ってみてください。作業項目って何? についてはまた回を改めて紹介する予定です。

次のページ
ワークスペースの注意

この記事は参考になりましたか?

Team Foundation Serverを使ってみよう連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト りばてぃ/FUJIKO/ナオキ(リバティ, フジコ, ナオキ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/2602 2008/09/05 11:41

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー