Microsoft Team Foundation Serverを使用したバージョン管理

Enabling Business with Superior Technology

本書に記載の内容は、将来予告なしに変更することがあります。これらの情報について MSE（Magic
Software Enterprises Ltd.）および MSJ（Magic Software Japan K.K.）は、いかなる責任も負いません。本書の内容につきましては、万全を期して作成していますが、万一誤りや不正確な記述があったとしても、MSE
および MSJ はいかなる責任、債務も負いません。
MSE および MSJ は、この製品の商業価値や特定の用途に対する適合性の保証を含め、この製品に関する
明示的、あるいは黙示的な保証は一切していません。MSE および MSJ は、本製品の使用またはその使用によってもたらされる結果に関する保証や告知は一切していません。この製品のもたらす結果およびパフォー
マンスに関する危険性は、すべてユーザが責任を負うものとします。この製品を使用した結果、または使用不可能な結果生じた間接的、偶発的、副次的な損害（営利損失、業務中断、業務情報の損失などの損害も含む）
に関し、事前に損害の可能性が勧告されていた場合であっても、MSE および MSJ、その管理者、役員、従業員、代理人は、いかなる場合にも一切責任を負いません。
本書に記載のソフトウェアは、製品の使用許諾契約書に記載の条件に同意をされたライセンス所有者に対してのみ供給されるものです。同ライセンスの許可する条件のもとでのみ、使用または複製することが許されます。
当該ライセンスが特に許可している場合を除いては、いかなる媒体へも複製することはできません。ライセンス
所有者自身の個人使用目的で行う場合を除き、MSE または MSJ の書面による事前の許可なしでは、いかなる条件下でも、本書のいかなる部分も、電子的、機械的、撮影、録音、その他のいかなる手段によっても、コ
ピー、検索システムへの記憶、電送を行うことはできません。
一般に、会社名、製品名は各社の商標または登録商標です。サードパーティ各社商標の引用は、MSE およ
び MSJ の製品に対する互換性に関しての情報提供のみを目的としてなされるものです。
本書において、説明のためにサンプルとして引用されている会社名、製品名、住所、人物は、特に断り書きのないかぎり、すべて架空のものであり、実在のものについて言及するものではありません。
初版

2011 年 2 月 28 日

マジックソフトウェア・ジャパン株式会社

1.

はじめに ............................................................................................................................................... 52.

バージョン管理機能について ................................................................................................................ 6

3.

TFS のインストール .............................................................................................................................. 8
3.1.

前提ソフトウェアのインストール ...................................................................................................... 9

3.2.

TFS 2010 のインストール ........................................................................................................... 12

3.3.

チーム エクスプローラ のインストール ........................................................................................ 15

3.4.

チームプロジェクトの作成 ............................................................................................................ 16

3.4.1. TFS への接続 .......................................................................................................................... 17
3.4.2. チーム プロジェクトの作成 ....................................................................................................... 19
3.4.3. チーム プロジェクトの設定変更................................................................................................ 20
3.5.

ユーザ登録 ................................................................................................................................. 21

3.5.1. Windows のユーザとグループを作成 ...................................................................................... 22
3.5.2. TFS のグループ設定................................................................................................................ 24
4.

クライアント側のインストール............................................................................................................... 27
4.1.

チーム エクスプローラ のセットアップ .......................................................................................... 28

4.1.1. 前提ソフトウェア ....................................................................................................................... 28
4.1.2. チーム エクスプローラのインストール....................................................................................... 28

5.

4.2.

TFS への接続............................................................................................................................. 29

4.3.

MSSCCI Provider 2010 のインストール .................................................................................... 32

プロジェクトのバージョン管理操作 ....................................................................................................... 33
5.1.

新規にプロジェクトを作成するには？ ........................................................................................... 35

5.2.

TFS に登録されているプロジェクトから開くには？ ....................................................................... 38

5.3.

既存プロジェクトをバージョン管理に追加するには？ .................................................................... 40

5.4.

プロジェクトをバージョン管理から除外する ................................................................................... 43

5.5.

クライアント PC のプロジェクトを削除するには ............................................................................. 45

5.6.

TFS 上の uniPaaS プロジェクトを削除するには .......................................................................... 47

5.6.1. 各開発者 PC で作業フォルダ削除 ........................................................................................... 47
6.

バージョン管理の基本操作 ................................................................................................................. 50
6.1.

リポジトリのバージョン管理 .......................................................................................................... 51

6.1.1. チェックアウト ........................................................................................................................... 51
6.1.2. チェックイン .............................................................................................................................. 53
6.2.

プログラムリポジトリのバージョン管理.......................................................................................... 54

6.2.1. プログラムリポジトリ全体のチェックアウト ................................................................................. 55
6.2.2. プログラムリポジトリ全体のチェックイン .................................................................................... 57
6.2.3. 新規プログラムの作成 ............................................................................................................. 58
6.2.4. プログラムの削除 .................................................................................................................... 61
6.2.5. プログラムの移動登録 ............................................................................................................. 63
6.2.6. プログラムの複写登録 ............................................................................................................. 65
6.2.7. プログラムの上書き登録 .......................................................................................................... 68
6.3.

個々のプログラムのバージョン管理 ............................................................................................. 71

6.3.1. 特定の既存のプログラムのチェックアウト ................................................................................. 71
6.3.2. チェックアウトしたプログラムのチェックイン ............................................................................... 73
6.3.3. チェック取消 ............................................................................................................................. 74
6.4.

その他の操作 .............................................................................................................................. 75

6.4.1. 最新プロジェクトの取得 ............................................................................................................ 75
6.4.2. 最新バージョンの取得 ............................................................................................................. 77
6.4.3. 履歴の表示 ............................................................................................................................. 79
6.4.4. 差分 ........................................................................................................................................ 80
6.4.5. 過去のバージョンの取得 .......................................................................................................... 82
7.

オフラインモード作業 .......................................................................................................................... 84
7.1.

オフライン動作にするには ........................................................................................................... 85

7.2.

オフラインで修正を行うには ......................................................................................................... 86

7.3.

オフラインで修正されたオブジェクトを確認するには ..................................................................... 87

7.4.

オフラインからオンラインに戻るには ............................................................................................ 88

7.5.

オフラインでのプログラム新規作成と削除について ...................................................................... 91

7.5.1. オフラインでのプログラムオブジェクトの新規作成 ..................................................................... 91
7.5.2. プログラムオブジェクトの削除 .................................................................................................. 95

1. はじめにMicrosoft Team Foundation Server (以下、TFS と省略します)は、マイクロソフト社が提供する開発環境のコンポーネントであり、開発チームが共同でプロジェクトを推進する機能を提供します。その機能の一つとしてソース管理機能があります。
Magic uniPaaS VPlus は、マイクロソフト社が定義する SCC（Source Code Control） API をサポートしているので、マイクロソフト社の TFS と、同じくマイクロソフト社が提供する Team Foundation Server MSSCCI
Provider 2010 を使用して、uniPaaS プロジェクトのチーム開発およびバージョン管理機能を実現することができます。
バージョン管理機能は、Magic uniPaaS V1Plus の実行中にプロジェクトのバージョンを管理し、それらのバー
ジョンを保存したり、過去のバージョンを検索あるいは取得したりすることができます。また、バージョン管理機
能を使用してチーム開発を行うことも可能です。チーム開発を行うことで、複数の開発者が平行してプロジェクトを開発することができます。開発するファイルをチェックアウトして、他のユーザによる上書き操作からファイルを保護したり、誰がどのバージョンを編集したかなどユーザの追跡を行うことができます。
バージョン管理システムとして TFS を使用する場合、この文書をお読みください。この文書は、Magic
uniPaaS V1Plus がバージョン管理システムとして TFS を使用する場合の設定方法とバージョン管理を行うための基本的な手順を説明します。

Microsoft Team Foundation Server を使用したバージョン管理5

2. バージョン管理機能についてバージョン管理は各リポジトリ（モデル、データ、プログラム、ヘルプ、権利、メニュー、コンポーネント）で行うことができます。uniPaaS V1Plus Studio は全てのプロジェクトを XML ファイルで管理しているので、プロジェクトのバージョン管理をすることということは、それら XML ファイルのバージョン管理をしていることになります。

uniPaaS Studio
作業フォルダTFS

バージョン管理システム

uniPaaS Studioオリジナル
作業フォルダソース

uniPaaS Studio
作業フォルダバージョン管理の基本はチェックアウトとチェックインです。編集するオブジェクトがあれば、バージョン管理シス
テムからチェックアウトして持ち出して編集し、終了したらチェックインして修正したオブジェクトをバージョン管理システムに戻します。
本書での「オブジェクト」とは、バージョン管理の単位であり、次のものを指します。


各リポジトリ

個々のプログラム

Microsoft Team Foundation Server を使用したバージョン管理6

バージョン管理システム

uniPaaS Studio

Prg_1.xml
Ver.1

チェックアウトPrg_1.xml（コピー）編

バージョン管理システム

集uniPaaS Studio

Prg_1.xml
Ver.2

チェックイン

Prg_1.xml（編集終了）

開発をする場合、その対象となるオブジェクトをチェックアウトします。プログラムリポジトリの場合は、プログラ
ムリポジトリの目次（Progs.xml）とプログラムそのもの（Prog_n.xml）をチェックアウトすることになります。プロ
グラムリポジトリの目次をチェックアウトすることで、行作成、修正、削除などの編集を行います。
なお、チェックアウトは排他的に行われます。すなわち、すでに他のユーザがチェックアウトしているオブジェクトをチェックアウトすることはできません。

注意事項


各ユーザは作業フォルダをそれぞれのローカルコンピュータに作成してください。作業フォルダをネットワ
ーク上においてそれらを共有しても正しいバージョン管理は行えません。



フォルダは各ユーザごとに保有してください。別のユーザが同じコンピュータ上で作業フォルダを共有することはできません。



バージョン管理機能を使用する際は、履歴管理機能も同時にインストールされます。チーム開発時などでそれらを使用しない場合でも、履歴管理機能を削除することはできません。

Magic の環境ファイルなど、プロジェクト以外のファイルも含めてバージョン管理したい場合は、チーム エクスプローラから直接ファイルを追加してください。
「チームエクスプローラ」というのは、マイクロソフト社が提供する、TFS 利用のための GUI ツールです。 3.3 「チーム エクスプローラ のインストール」以下を参照してください。
チーム エクスプローラには、バージョン管理以外にも多くの機能がありますが、本書では uniPaaS
でのバージョン管理に必要な機能に限定して説明します。

Microsoft Team Foundation Server を使用したバージョン管理7

3. TFS のインストール
uniPaaS Studio から TFS を利用してバージョン管理を行うには、次のソフトウェアコンポーネントが必要となります。
TFS を実行しているサーバ：


前提ソフトウェアコンポーネント


IIS



.NET Framework 3.5SP1



Microsoft SQL Server (TFS インストール DVD に Express Edition が同梱されており、必要な場合にはインストーラが自動的に選択します)。

TFS 2010


TFS インストール時に、同時に、SQL Server Express、.NET Framework 4.0、その他必要ランタ
イムモジュール等もインストールされますVisual Studio チームエクスプローラ 2010

uniPaaS Studio を実行している各クライアント PC：
Visual Studio チームエクスプローラ 2010

Team Foundation Server MSSCCI Provider 2010

本章では、TFS をサーバにインストールする手順を説明します。
インストールは Administrator 権限のあるユーザでログオンして行います。
以 下 の 説 明 では 、 Administrators グ ルー プに 所属 す る ユー ザ を tfsadmin という名 前 で作 成 して 、
tfsadmin でログオンして作業することを前提としています。Administrator と異なるユーザを作成したのは、
セキュリティ管理上の便からで、セキュリティ上特に問題なければ Administrator で行って構いません。
TFS のインストールに当たっては、TFS2010 インストールガイドなどでシステム要件、前提条件、システム構成のバリエーションなどについて確認してください。
http://www.microsoft.com/downloads/details.aspx?displaylang=ja&
FamilyID=2d531219-2c39-4c69-88ef-f5ae6ac18c9f



TFS をインストールするにあたっては、TFS のシステム要件に注意してください。一般に TFS は
VSS よりも多くのシステムリソース（メモリ、ハードディスク、CPU）を要求します。



同梱の SQL Server Express ではなく、既存の SQL Server を利用する場合には、インストー
ラでその SQL Server への接続情報を入力します。本書では一番シンプルな構成によるインスト
ール方を解説し、その他の構成のインストール方法の解説は省略します。上記インストールガイ
ドを参照してください。

Microsoft Team Foundation Server を使用したバージョン管理8

3.1. 前提ソフトウェアのインストール
TFS をインストールするに先立って、IIS がインストールされていなければなりません。
IIS をインストールするには、サーバマネージャから IIS の役割を追加します。また、.NET Framework 3.5.1
をインストールするために、「アプリケーション サーバ」の役割を追加します。
サーバマネージャを開き、「役割」から「役割の追加」
をクリックします。

「サーバの役割の選択」画
面で、「Web サーバ (IIS)」
お よ び 「 ア プ リ ケ ー シ ョンサーバ」 にチェックを入れます。

Microsoft Team Foundation Server を使用したバージョン管理

9

「アプリケーション サーバ→ 役割サービスの選択」
では、「.NET Framework
3.5.1」にチェックを入っていることを確認します。
※ .NET

Framework

3.5.1 は、SQL Server
Express をインストー
ルするために必要です。

「Web サーバ(IIS) → 役
割サービスの選択」は、デフォルトのままで OK です。

Microsoft Team Foundation Server を使用したバージョン管理

10インストールが終わった
ら、エラーが起こっていな
かったかを確認してください。

Microsoft Team Foundation Server を使用したバージョン管理113.2. TFS 2010 のインストール
TFS2010 をインストールするには、次のように行います。

TFS 2010 の DVD から、setup.exe
を起動します。

「インストールする機能」画面で「Team Foundation Server」にチェッ
クを入れます。

Microsoft Team Foundation Server を使用したバージョン管理12

「インストール」ボタンを押すと、インストールが始まります。

インストールが正常に終了したら、「Team Foundation Server 構成ツールを起動する」にチェックしたま
ま、「構成」ボタンを押します。

「構成センター」画面が出てきます。
ここでは最も単純な構成として、「基本」を選択し「ウィザードの開始」ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理

13

SQL Server インスタンスの選択をします。
すでに SQL Server がインストールされている場合には、「既存の SQL
Server インスタンスを使用する」を選択します。
ここでは、SQL Server がインストー
ルされていないので、Express をインストールして利用するために、「SQL Server Express のインストー
ル」を選択します。
「次へ」ボタンを押します。
インストールの前提条件がチェックされるので、問題ないことを確認してください。
「構成」ボタンを押してください。

インストールが終わったら、すべて
エラーなく完了したことを確認してください。
以上で TFS のインストールは終了です。

Microsoft Team Foundation Server を使用したバージョン管理14

3.3. チーム エクスプローラ のインストール
TFS 2010 の DVD から、チーム エク
スプローラ の setup.exe を起動します。

「インストールする機能」として「チーム エクスプローラ」を選択して、「インストール」ボタンを押します。
チームエクスプローラのインストー
ルでは、特に設定などのオプション
はありません。

インストールが終わったら、問題なく完了していることを確認してください。

Microsoft Team Foundation Server を使用したバージョン管理15

3.4. チームプロジェクトの作成
uniPaaS Studio のチーム開発・バージョン管理機能は、TFS の「チームプロジェクト」上に作成しますので、
uniPaaS Studio で利用するにあたり、予め チームプロジェクトを作成しておく必要があります。
一つの TFS サーバ上に、複数のチームプロジェクトを作成することができます。また、一つのチームプロジェク
ト上に複数の uniPaaS プロジェクトを作成することができます。
ここでは、TFS 上のチーム エクスプローラを使って、チームプロジェクトを作成する方法を説明します。また、デフォルトのチームプロジェクトの設定では uniPaaS のチーム開発中に問題が起こるので、それを避けるためのオプション設定についても説明します。

Microsoft Team Foundation Server を使用したバージョン管理16

3.4.1. TFS への接続
ス タ ー ト メ ニ ュ ー か ら 、 Microsoft
Visual Studio 2010 を起動します。

メニュー

「チーム

→

Team

Foundation Server への接続」を選択します。

Team Foundation Server を選択します。このサーバ名が登録されているはずですので、それを選びます。
チームプロジェクトコレクションとして「DefaultCollection」があることを確認してください。(右図ではtfssrv1)。ここではこれをそのまま利用します。
「接続」ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理

17

「チーム

エクスプローラ」にDefaultCollection が表示されます。

Microsoft Team Foundation Server を使用したバージョン管理18

3.4.2. チーム プロジェクトの作成
メニュー 「ファイル → 新しいチー
ム プロジェクト」を選択します。

チームプロジェクトの名前を指定します。
ここでは MagicTeamProject としま
した。
「次へ」ボタンを押します。

チームプロジェクトを作成するためのプロセス テンプレートとして、「MSF for Agile Software
Development v5.0」を選択します。
「完了」ボタンを押します。

チーム プロジェクトが作成されたことを確認してください。

チーム エクスプローラが右図のよ
うになります。

Microsoft Team Foundation Server を使用したバージョン管理19

3.4.3. チーム プロジェクトの設定変更
デフォルトの設定では、チェックアウト／チェックインを行うと問題が出るため、以下の設定を変更することが必要です。

チーム エクスプローラのチームプ
ロジェクトから、ポップアップメニュー
で「チームプロジェクトの設定 → ソース管理」を選択します。

「チェックアウトの設定」タブで、
「複数のチェックアウトを有効にする」のチェックを外します。
(下記「注意：」参照)「チェックアウト時の最新バー
ジョンの取得を有効にする」にチェックを入れます。
(この設定に関しては、下記「参考：」参照)
注意： uniPaaS のバージョン管理は、個々のオブジェクトに対して排他的なロックをかける必要があるので、「複数のチェックアウトを有効にする」をオフにしておくことが必須となります。
参考： 「チェックアウト時の最新バージョンの取得を有効にする」をオンにするかオフにするかは、チーム開発の方針により異なります。
この設定をオンにすると、チェックアウト時に、常に最新のバージョンがローカル HD にコピーされます。通常の場合、プロジェクトの整合性を極力保つために、この設定が適切です。
一方、次の操作を行う場合には、「チェックアウト時の最新バージョンの取得を有効にする」をオフにしておく必要があります。


過去のバージョンを取得する (6.4.5 「過去のバージョンの取得」 参照)

オフライン操作を行う (7.4 「オフラインからオンラインに戻るには」参照)

Microsoft Team Foundation Server を使用したバージョン管理20

3.5. ユーザ登録
プロジェクトに対するセキュリティのため、TFS を操作することのできるユーザを登録する必要があります。TFSに対するセキュリティは、Windows のユーザあるいはグループに対して、TFS のアクセス許可を設定する形となります。このため、TFS を操作するクライアント (uniPaaS Studio が実行されている)では、TFS へのログインが必要であり、このログインのユーザ ID/パスワードは、TFS サーバに Windows ユーザとして予め登録されている必要があります。
Windows ユーザ毎に個別にアクセス権限を設定することも可能ですが、ユーザ管理の容易さのために、TFSは独自のグループがいくつか定義されており、その TFS のグループに Windows ユーザ/グループを所属させることにより、グループ単位でアクセス許可を設定することができます。
ここでは例として、次のような設定を考えてみます。
目的

名前

補足

TFS 管理者

tfsadminTFS

を イ ン ス ト ー ル し た 、Administrator 権限を有するユーザ
TFS 利用者

magicusr1、magicusr2、magicusr3

TFS 利用者グループ

magicusers

Microsoft Team Foundation Server を使用したバージョン管理21

3.5.1. Windows のユーザとグループを作成
Windows の「サーバマネージャ」から、「構成→ローカル ユーザとグループ→ユーザ」を選択
し、ポップアップメニューで「新しいユーザ」を選択します。

ユーザ magicusr1、magicusr2、magicusr3 を作成します。

Windows の「サーバマネージャ」から、「構成→ローカル ユーザとグループ→グループ」を選択し、ポップアップメニューで「新しいグループ」
を選択します。

Microsoft Team Foundation Server を使用したバージョン管理22

グループ名は magicuser とし、所属するメンバーとして magicusr1、magicusr2、magicusr3を追加します。

以上で、Windows のユーザ/グループの登録は終わりです。

Microsoft Team Foundation Server を使用したバージョン管理23

3.5.2. TFS のグループ設定
次に、Windows の magicuser グループと、TFS のグループとの対応を定義します。

Visual Studio 2010 を起動し、チームエ
クスプローラで TFS サーバに接続します。

チームプロジェクト MagicTeamProject
を選び、ポップアップメニューで「チームプロジェクトの設定 → グループ メン
バーシップ」を選びます。

[MyTeamProject]\共同作成者 を選択し、「プロパティ」ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理24

「Windows ユーザまたはグループ」を選んで、「追加」ボタンを押します。

magicuser グループを選択し、OK ボタ
ンを押します。

「メンバー」として、magicuser が登録されたことを確認してください。

Microsoft Team Foundation Server を使用したバージョン管理25

次に、管理者の確認をします。
[MagicTeamProject]\プロジェクト管理者 を選択して、「プロパティ」ボタンを押します。

「ユーザまたはグループ」として、
tfsadmin (TFS をインストールしたユーザ) が登録されていることを確認してください。

以上でユーザの設定は終わりです。

Microsoft Team Foundation Server を使用したバージョン管理26

4. クライアント側のインストール
サーバ側で TFS のインストールが終わり、チームプロジェクトを作成したら、クライアント側 (uniPaaS Studioを利用する PC)上で、


TFS クライアント (チーム エクスプローラ)



MSSCCI Provider 2010

をインストールします。

ログオンユーザ
チーム エクスプローラ およびの MSSCCI Provider 2010 インストールは、Administrator 権限のあるユー
ザが行います。
一方、uniPaaS Studio で TFS をアクセスしてチーム開発を行う場合には、TFS へのアクセス権限のあるユー
ザで TFS へログインしなければなりません。Studio が最初に TFS にアクセスするタイミングでログイン画面が出てきますので、ここで TFS へのログイン ID とパスワードを入力します。
TFS へのログインユーザは、Windows へのログインユーザと同じである必要はありませんが、管理上の容易さのために、同じにしておくことを推奨します。

Microsoft Team Foundation Server を使用したバージョン管理27

4.1. チーム エクスプローラ のセットアップ
クライアント PC では、チーム エクスプローラ をまずインストールし、TFS へ接続する必要があります。

4.1.1. 前提ソフトウェア
Windows XP、Vista、Windows 7 などでは、チーム エクスプローラ をインストールするための前提ソフトウ
ェアは特にありません。TFS の DVD からチーム エクスプローラ の setup.exe を起動して、そのままインストールできます。

4.1.2. チーム エクスプローラのインストール
チーム エクスプローラのインストール手順は、TFS サーバ上でのインストールと同じです。3.3 「チーム エクス
プローラ のインストール」を参照して、インストールを行ってください。

Microsoft Team Foundation Server を使用したバージョン管理28

4.2. TFS への接続
チーム エクスプローラをインストールしたら、uniPaaS Studio を起動する前に、各クライアント PC でいく
つか設定をしておく必要があります。
Windows のスタートメニュ
ーからVisual Studio 2010 を起動します。

メニュー 「チーム→Team
Foundation Server への接続」を選びます。

「チーム プロジェクトへ接続」ダイアログで、「サーバ」ボタンを押します。

初期状態では、登録されている TFS はないので、一覧は空です。
登録するために「追加」ボ
タンを押します。

Microsoft Team Foundation Server を使用したバージョン管理29

「Team Foundation Serverの名前または URL」に、
TFS のあるサーバ名を指定します。その他はデフォルトのままで OK です。

TFS に接続するためのユーザ ID/パスワードを聞いてきますので、TFS に登録したユーザ ID/パス
ワードを入力します。

一覧に登録されたことを確認して、「閉じる」ボタンを押します。

TFS サーバへ接続され、チームプロジェクトが表示されていることを確認します。
「接続」ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理30

チーム エクスプローラに
コレクションとチーム プロ
ジェクトが表示されたことを確認してください。
以上で、TFS への接続は完了です。

一旦 Visual Studio を閉
じてください。

Microsoft Team Foundation Server を使用したバージョン管理31

4.3. MSSCCI Provider 2010 のインストール
チーム エクスプローラの次には、Team Foundation Server MSSCCI Provider 2010 をインストールしま
す。
Team Foundation Server MSSCCI Provider 2010 は、Microsoft 社の Web サイトからダウンロードすることができます。
(http://visualstudiogallery.msdn.microsoft.com/ja-jp/bce06506-be38-47a1-9f29-d3937d3d88d6)
インストールプログラム (MSI 形式)
を起動します。

MSSCCI Provider のインストール
においては、オプションはほとんどありません。ウィザードに従ってそのま
まインストールを行ってください。
以上で、MSSCCI Provider のインストールが完了です。

Microsoft Team Foundation Server を使用したバージョン管理32

5. プロジェクトのバージョン管理操作
本章では、Magic uniPaaS V1Plus のプロジェクトレベルでバージョン管理操作をする方法について説明します。
プロジェクトレベルでのバージョン管理操作には、次のようなものがあります。

操作ローカル PC 上の

TFS バージョン

プロジェクトファイル

管理データベース

新規作成

新規作成

新規作成

（既存）

サーバから

新規作成

（既存）

ているプロジェクトから開くには？

コピー

5.3 既存プロジェクト
をバージョン管理に

登録

管理サーバ

クトを作成するに

5.2 TFS に登録され

新規作成

バージョン

5.1 新規にプロジェ
は？

登録

開く

説明

追加する

に追加

プロジェクトバージョン管理情報削除

5.4 プロジェクトをバ
関連付け解除(そのまま)

外する

除外

ローカル PC のージョン管理から除5.5 クライアント PC
削除

関連付け解除プロジェクト（そのまま）のプロジェクトを削除
するには

ファイル
を削除

5.6 TFS 上の
TFS

削除

関連付け解除プロジェクト削除

uniPaaS プロジェク
トを削除するにはを削除

Microsoft Team Foundation Server を使用したバージョン管理33

プロジェクト TFS 上に登録したり、TFS 上のプロジェクトを削除したりすることは、慎重に行ってください。万一、間違えた場合に復旧するには、ある程度の TFS の知識が必要です。このため、以下のよ
うにすることを推奨します。


TFS の扱いに慣れた人を管理者として立てます。



プロジェクトの登録・削除は、その人だけが行うようにします。



一般の開発者は、管理者が登録したプロジェクトを「サーバから開く」でコピーして作業します。



管理者は TFS 2010 についての基本的な理解が必要になります。TFS の一般的な取り扱いについては、下記の技術資料を参照してください。
「Team Foundation 管理ガイド」(TFS をインストールすると、スタートメニューに登録されます)

MSDN ライブラリ http://msdn.microsoft.com/ja-jp/library/ms181368.aspx

特に、TFS を取り扱う上で、「ワークスペース」の概念が重要になります。これは VSS にはなかったもので、TFS に固有のものです。



TFS のワークスペースについては、同じく、MSDN ライブラリで「ワークスペースの操作」
http://msdn.microsoft.com/ja-jp/library/ms181368.aspx などを参照してください。



ワークスペースは通常は Team Explorer から取り扱いますが、コマンドラインツール tf を使うと、より詳細な操作を行うことができます。tf コマンドについては、Team Foundation 管理ガ
イドあるいは http://msdn.microsoft.com/ja-jp/library/z51z7zy0.aspx などを参照してくだ
さい。

Microsoft Team Foundation Server を使用したバージョン管理34

5.1. 新規にプロジェクトを作成するには？
1.

uniPaaS Studio からテストプロジェクトを作成してみましょう。ここでは、ユーザ magicusr1 が、プロジ
ェクト MyTestProject1 を新規作成する手順を示します。
ローカル HDDTFS データベース

新規作成

新規作成

登録

1.

uniPaaS Studio を起動し、メ
ニュー「ファイル→新規作成」
を選びます。

2.

名前は適当に付け(ここではMyTestProject1)、「バージ ョン管理データベースに新規プ
ロジェクトを作成します」にチェックを入れます。

3.

「OK」ボタンを押します。

4.

TFS への接続ダイアログが出ます。デフォルトで、先に登録した TFS サーバが選択されているはずです。

5.

「OK」ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理

35

6.

TFS へのログインダイアログが出ますので、TFS のユー
ザ ID/パスワードを入力し、「OK」ボタンを押します。

7.

「バージョン管理プロジェクトの作成」ダイアログが出ますので、このまま「OK」ボタンを
押します。

8.

もういちど TFS サーバへの接
続ダイアログが出ます。

9.

TFS サーバを確認して、このまま OK ボタンを押します。

10. TFS サーバのフォルダ選択
ダイアログが出ます。
11. 「Folder Location」では、「MyTeamProject」を選択します。
12. 「Type a name for thesolution folder」では、uniPaaS プロジェクトと同じ名前を指定します。(別の名前に登録することもできます
が、管理上の便利のために、同じ名前とします)13. 「OK」ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理36

14. チェックイン ダイアログが出ますので、このまま「チェックイン」ボタンを押します。

15. もう一度、チェックイン ダイア
ログが出ますので、そのまま「チェックイン」ボタンを押します。

16. プロジェクトが TFS に登録され、uniPaaS Studio ではプロジェクトがオープンされます。

Microsoft Team Foundation Server を使用したバージョン管理37

5.2. TFS に登録されているプロジェクトから開くには？
新規でプロジェクトが TFS 上に登録された後、二人目以降のユーザは、既に作成されたそのプロジェクトに接続して自らの環境にプロジェクトをコピーし、チーム開発に参加することになります。
ここでは、新しいユーザ magicusr2 が、TFS に登録されているプロジェクト MyTestProject1 を、自分の PCのローカルハードディスクにコピーする場合の手順を示します。

ローカル HDDTFS データベース

新規作成

（既存）
コピー

新しいユーザが TFS に接続するためには、最初に一回だけ、チームエクスプローラを起動して、TFS へ接続し、接続情報を設定しておく必要があります。
この手順については、4.2 「TFS への接続」 と同じですので、以下の作業を始めるにあたり、予め実行しておいてください。

uniPaaS Studio を 起 動 し 、 メ ニ ュ ー「ファイル → バージョン管理 → サー
バから開く」 を選びます。

TFS への接続ダイアログが出るので、プロジェクトが登録されている TFS を選択します。

TFS のフォルダ選択画面が出ますので、登録されているプロジェクトファイ
ルのディレクトリを選択します。
今の場合、$/→ MagicTeamProject→ MyTestProject1
を選択して、OK ボタンを押します。
Microsoft Team Foundation Server を使用したバージョン管理38

「サーバから開く」ダイアログが開きます。
このダイアログで、「位置」の設定を確認してください。ここにプロジェクトファ
イルが TFS からコピーされます。

OK ボタンを押せば、最新のプロジェク
トファイルが TFS よりコピーされ、そのプロジェクトがオープンされます。
これで、magicusr2 がチーム開発に参加するようになりました。

プロジェクトファイルを作成(コピー)するディレクトリに注意してください。上記の例では、ユーザごとに異なる PC を利用していると仮定して、uniPaaS ディレクトリの下にある Projects サブディレクト
リ (デフォルト設定) に作成しましたが、一般には次のような点を考慮する必要があります。


ディレクトリは、安定性とパフォーマンスの点から、ローカル HDD 上に作成することを推奨します。ネットワークドライブ上に作成することは推奨できません。



複数のユーザが共用する同一 PC 上でチーム開発を行う場合には、ユーザごとに異なるフォルダにプロジェクトファイルを作成するようにしてください。
例えば、magicusr1 は c:¥MagicProj¥magicusr1 以下のサブフォルダに、magicusr2 はc:¥MagicProj¥magicusr2 以下のサブフォルダに作成する、というよう具合です。

Microsoft Team Foundation Server を使用したバージョン管理39

5.3. 既存プロジェクトをバージョン管理に追加するには？
バージョン管理を行わないで作成したプロジェクトを、開発途中でバージョン管理下に追加する場合には以下のように設定を行います。
ここでは、MyTestProject2 というプロジェクト(バージョン管理を使わずに作成・開発したもの) を、TFS に登録する手順を説明します。

ローカル HDDTFS データベース
新規作成

（既存）
登録

1.

uniPaaS Studio で、追加した
い

プ

ロ

ジ

ェ

ク

ト

MyTestProject2 を 開 き ます。
2.

この状態で、メニュー 「ファイル → バージョン管理 →バージョン管理サーバに追加」 を選びます。

3.

適当にコメントを入れます。

4.

TFS 選択ダイアログが表示されるので、接続する TFS サーバを選択します。

Microsoft Team Foundation Server を使用したバージョン管理

40

5.

TFS のフォルダを選択するダイアログが出ますので、Folder Location として$/ → MagicTeamProjectを選択します。

6.

また、solution folder としては、プロジ ェクト と同じ名前
MyTestProject2 を 指定し ます。

7.

OK ボタンを押します。

8.

「チェックイン」ダイアログが出ますので、そのまま「チェックイン」ボタンを押します。

9.

しばらくして、再度「チェックイン」ダイアログが出ますので、これもそのまま 「チェックイン」ボタンを押してください。

Microsoft Team Foundation Server を使用したバージョン管理41

10. Studio に戻ったら、プロジェク
トが TFS に登録され、チーム開発できるようになりました。
バージョン管理に必要な機能
はメニュー上で全てアクティブになっています。

Microsoft Team Foundation Server を使用したバージョン管理42

5.4. プロジェクトをバージョン管理から除外する
プロジェクトを開発し始めた当初はバージョン管理を行うようにしていたが、後でバージョン管理対象外にして、スタンドアロンで開発したい場合にこの操作を行います。
ローカル HDD
バージョン管理情報削除

1.

TFS データベース
関連付け解除(そのまま)

uniPaaS Studio を起動し、バージ
ョン管理を除外しようとするプロジ
ェクトを開きます。

2.

メニュー 「ファイル → バージョン管理 → プロジェクト除外」を選
択します。

3.

確認ダイアログが出るので、「はい」で答えます。

Microsoft Team Foundation Server を使用したバージョン管理

43

4.

これで、このプロジェクトはバージ
ョ ン 管理対 象か ら除外さ れ ま した。バージョン管理関係のメニューは無効になっています。

Microsoft Team Foundation Server を使用したバージョン管理44

5.5. クライアント PC のプロジェクトを削除するにはTFS でバージョン管理を行っている uniPaaS プロジェクトについて、TFS 上のファイルはそのままにして、ローカル HDD 上のプロジェクトファイルを、削除したくなる場合があります。例えば、


もうこのクライアント PC では開発を行わない。

ローカル HD 上のプロジェクトファイルをリセットするため、一旦削除して再度取得しなおす。

などの状況です。
ローカル HDD削除

TFS データベース
関連付け解除（そのまま）

このような操作は、uniPaaS Studio では行えません。チーム エクスプローラを使って、
1.

バージョン管理システム上でのマッピングを解除する。

2.

クライアントのローカル HDD 上にあるフォルダやファイルをエクスプローラなどで削除する。

という順序で行います。
具体的には次のような手順で行います。ここでは、ユーザ magicur1 が、ソース管理されているプロジェクト
MyTextProject1 のプロジェクトファイルを削除する場合の例です。

uniPaaS Studio は終了しておいてください。
Visual Studio を起動します。
チーム エクスプローラ上で、最後に接続した TFS へ自動的に接続された状態になります。
チームプロジェクトの「ソース管理」をダブルクリックします。

ソース管理エクスプローラが表示されるので、uniPaaS のプロ
ジ ェ ク ト フ ォ ル ダ
MyTestProject1 を選びます。

Microsoft Team Foundation Server を使用したバージョン管理45

ポップアップメニューから「マップの削除」を選択します。

「マップの削除」ダイアログが出るので、そのまま「マップの削除」ボタンを押します。

「ローカル パス」が「マップされていません」になったことを確認してください。
以上で、バージョン管理のマップの削除が完了です。

プロジェクトのファイルをローカ
ル HD から削除します。
エクスプローラなどから削除してください。
以上で、このクライアント PC からプロジェクトがきれいに削除されました。

Microsoft Team Foundation Server を使用したバージョン管理46

5.6. TFS 上の uniPaaS プロジェクトを削除するにはTFS 上でバージョン管理されている uniPaaS プロジェクト全体を削除したいことがあります。例えば、


このプロジェクトはもうバージョン管理する必要がなくなった。(メンテナンスの終了)

プロジェクトの再作成を行うので、古いバージョンが不要になった。(一旦削除して、再度登録しなおす)。
ローカル HDD のTFS プロジェクト

作業フォルダフォルダ

削除

関連付け解除削除

このような場合の操作について、MyTestProject1 というプロジェクトを削除する場合を例にとって説明します。
この操作を行うと、TFS のデータベースが削除されるので、このプロジェクトについては一切バージ
ョン管理ができなくなり、復元もできません。

5.6.1. 各開発者 PC で作業フォルダ削除
TFS の MyTestProject1 プロジェクトフォルダを削除するに先立って、そのプロジェクトフォルダを参照している、各開発者の PC にある作業フォルダとファイルを削除し、関連付けをすべて削除しておく必要があります。
このような場合には、Visual Studio のソース管理エクスプローラから削除を行います。

Visual Studio を起動し、チームエクスプローラ画
面から「ソース管理」をダ
ブルクリックします。ソース管理エクスプローラが開きます。

Microsoft Team Foundation Server を使用したバージョン管理47

削除しようとするプロジェ
クトファイルを選択します。
今の場合、
MyTestProject1 フォルダです。
続いて、「削除」ボタンを
押します。
この他に、


DEL キーを押す

ポップアップメニュー
で「削除」を選ぶ

メニュー「編集→削除」を選ぶなどの方法もあります。
削除のフラグが付けられます。この時点ではまだ削除されていません。

本当に削除するには、「チェックイン」ボタンを押します。
この他、ポップアップメニ
ューから「保留中の変更をチェックイン」を選ぶ、という方法もあります。

Microsoft Team Foundation Server を使用したバージョン管理48

チェックイン ダイアログが出るので、そのまま「チェックイン」ボタンを押します。

フォルダ
MyTestProject1 が削除されたことを確認してください。

TFS 上のフォルダを削除しても、ローカル HD 上のフォルダやファイルは削除されません。不要であれば、エクスプローラなどから削除してください。

Microsoft Team Foundation Server を使用したバージョン管理49

6. バージョン管理の基本操作
uniPaaS のバージョン管理はオブジェクト単位で行われます。あるユーザが修正を加えたい時には、対象となるオブジェクトを チェックアウト → 修正 → チェックインする という手続きを踏みます。
本書での「オブジェクト」とは、バージョン管理の単位であり、次のものを指します。


各リポジトリ

個々のプログラム

uniPaaS では、各リポジトリは１つの XML ファイルで構成されていますので、バージョン管理システムはそれぞれの XML ファイルを管理しています。
プログラムリポジトリに関しては例外で、リポジトリ（目次）とプログラム毎に XML ファイルを所有しています。
従って、バージョン管理もリポジトリとプログラム毎に管理されます。ユーザは各プログラムで チェックアウ
ト -> チェックイン を行ってバージョン管理を行ってください。
この章ではまず各リポジトリの操作を説明し、その次にプログラムリポジトリでの操作を説明します。チェックアウトとチェックインに関しては一般のリポジトリとプログラムリポジトリの場合を分けて書いていますが、その他の機能に関してはプログラムリポジトリの項を参考にしてください。
uniPaaS のバージョン管理を行う上で注意が必要なことは、他のユーザの修正内容を反映するタイミングの違いです。uniPaaS のバージョン管理の方法では、あるユーザがチェックインをすると、その内容は TFSの管理している XML ファイルには反映されますが、各ユーザが持っているローカルコピーには反映されません。従って、この状態では、バージョン管理システムの内容と各ユーザのローカルコピーとで、不一致が生じていることになります。
特に、モデルリポジトリやデータソースリポジトリなど、プロジェクト全体に影響のあるリポジトリに不一致がある状態でプログラムの開発を続けていると、開発したプログラムが不正なものになってしまう可能性があります。
この問題を避けるためには、不一致を解消するために各ユーザが「最新バージョンの取得」を行う必要があります。モデルやデータソースの修正をする場合には、各ユーザ間でプロジェクトの整合性をとるために
は「最新バージョンの取得」をどのタイミングで行うか、チームの中で十分に検討しておく必要があります。

Microsoft Team Foundation Server を使用したバージョン管理50

6.1. リポジトリのバージョン管理
モデル、データ、ヘルプ、権利、メニュー、コンポーネントの各リポジトリは、オブジェクトの単位がリポジトリになっているため、バージョン管理においてチェックアウト/チェックインする場合もリポジトリ単位で行います。ここではプロジェクトを新規作成した場合のモデルリポジトリを例にあげてその手順を紹介します。
他のリポジトリも、同様の操作でバージョン管理を行うことができます。

6.1.1. チェックアウト
モデルリポジトリを修正 (モデルの追加、削除、変更) をするには、まず、モデルリポジトリをチェックアウトします。
1. モデルリポジトリを表示させます。

2. カーソルをタイトルヘッダに置き、 メ
ニュー「ファイル→バージョン管理→
チェックアウト」 を選択します。

3. コメント用のダイアログがでるので、そのまま[OK] ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理51

4. モデルリポジトリを修正します。
例えば、新たにモデルを定義するには、F4 を押してモデルを登録します。

5. いくつかの項目を作成してみます。

6. ここでチェックアウト一覧を見てみます。

メニュー「ファイル→バージョン管理→チェックアウト一覧」 を選択すると、チェックアウトしたオブジェクトの一覧を表示することができます。
モデルリポジトリのみがチェックアウト
されているのが確認できます。

参考： あるユーザがチェックアウトしている時に、他のユーザが同じオブジェクトをチェックインすることはできません。チェックインしようとすると、以下のようなメッセージがでます。

Microsoft Team Foundation Server を使用したバージョン管理52

6.1.2. チェックイン
チェックアウトして修正したモデルリポジトリの内容を、TFS に反映させるためには、チェックインする必要があ
ります。

1.

メニュー「ファイル→バージョン管理→チェックイン」 を選択します。

2. コメントを記入して、「OK」 ボタンを押します。

3. チェックイン ダイアログが出ます
が、そのまま「チェックイン」ボタンを押します。

重要： チーム開発の相互間の整合性を保つためには、あるユーザがチェックインした後は、他のユーザは「最新バージョンの取得」をして参照するデータに不一致のないようにする必要があります。このことは、モデルリポジトリやデータソースリポジトリなど、プロジェクト全体に影響を与えるリポジトリに修正を行った場合には特に重要です。

Microsoft Team Foundation Server を使用したバージョン管理53

6.2. プログラムリポジトリのバージョン管理プログラムリポジトリは他のリポジトリと違い、プログラムリポジトリ全体（目次）と各プログラムがバージョン管理の対象オブジェクトになります。従ってチェックアウト/チェックインは、プログラムリポジトリ全体と、各プログラム毎に、必要に応じて、それぞれ行う必要があります。
プログラムリポジトリの修正を行うとき、次の二つのケースで操作が異なります。
プログラムの追加、削除、移動などを行う場合： この場合には、個々のプログラムのチェックイン/チェックアウトのほかに、プログラムリポジトリ全体のチェックイン・チェックアウトが必要になります。本
節では、このケースについて説明します。



既存のプログラムの修正のみを行う場合： この場合には、個々のプログラムのチェックインとチェッ
クアウトだけを行います。プログラムリポジトリ全体のチェックイン、チェックアウトは行う必要はありません。このケースは、「6.3.個々のプログラムのバージョン管理」で説明します。

Microsoft Team Foundation Server を使用したバージョン管理54

6.2.1. プログラムリポジトリ全体のチェックアウト
プログラムリポジトリ全体をチェックアウトするには、次のようにします。
1. プログラムリポジトリのタイトルヘッダにカーソルを置きます。

2. [ファイル] -> [バージョン管理] -> [チェックアウト] を選択します。

3. チェックアウトダイアログが出ますので、そのまま「OK」ボタンを押します。
※ ここではコメントを入力することはできません。

4. 「最新バージョン取得」ダイアログが出ます。

「OK」ボタンを押すとチェックアウト完了です。

参考： このときの動作は、TFS のチームプロジェクトの「チェックアウトの設定」で、「チェックアウト時の最新バージョンの取得を有効にする」の設定により変わります。


この設定がオンの場合には、チェックアウト時に常に最新バージョンが取得されます。



この設定がオフの場合には、上記ダイアログの「プログラムの最新バージョンを取得」がオンになっていた場合にだけ、最新バージョンが取得されます。 「プログラムの最新バージョンの取得」は任意ですが、同期をとるためにできるだけ行うことを推奨します。

Microsoft Team Foundation Server を使用したバージョン管理55

参考： メニュー 「ファイル→バージョン管理→チェックアウト一覧」 を選択すると、チェックアウトしたオブジェクトの一覧を表示できるので、プログラムリポジトリがチェックアウ
トされていることを確認してください。

Microsoft Team Foundation Server を使用したバージョン管理56

6.2.2. プログラムリポジトリ全体のチェックイン
プログラムリポジトリ全体をチェックインするには、次のように行います。
1.

プログラムリポジトリのタイトルヘッダにカーソルを置きます。

2.

メニュー 「ファイル→バージョン管理→チェックイン」を選択します。

3.

チェックイン ダイアログが出るので、適当なコメントを入力して「OK」ボタンを押します。

4.

再度別のチェックイン ダイアログが出ますが、そのまま「チェックイン」ボタンを押します。

参考： 何も変更しない状態でチェックインすると、下記のようなダイアログが表示されます。これは何も変更点がなかったことを知らせるもので、エラーではありません。

Microsoft Team Foundation Server を使用したバージョン管理57

6.2.3. 新規プログラムの作成
新規プログラムを作成するには、次の手順に従って行います。
① プログラムリポジトリ全体をチェックアウトする。
② F4 キーでプログラムを新規作成する。→ 新規にプログラムが作成される。このプログラムは自動的にチェックアウトされた状態になっている。
③ その後プログラムを開いて適宜修正し、閉じる。
④ このプログラムをチェックインする。
⑤ プログラムリポジトリ全体をチェックインする。

以下に具体的な手順を示します。

1.

新規プログラムを作成するには、まずプログラムリポジトリ全体をチェックアウトすることが必要です。
6.2.1「プログラムリポジトリ全体のチェックアウト」 に従って、プログラムリポジトリ全体をチェックアウト
してください。

2.

次に[F4] を押して１行作成します。
チェックイン ダイアログが出るので、そのまま「チェックイン」ボタンを押します。

3.

これで、プログラムが新規に作成され、編集可能な状態になります。
この後、必要に応じて新規作成したプロ
グラムを修正してください。
右図では、「商品管理」という名前のプ
ログラムを作成しました。

メニュー「ファイル→バージョン管理→チェッ
クアウト一覧」でチェックアウト一覧を表示させるとプログラムリポジトリと「商品管理」プ
ログラムがチェックアウトされた状態である
ことが確認できます。

Microsoft Team Foundation Server を使用したバージョン管理58

プログラムの作成が終わったら、以下の手順でプログラムをチェックインします。
4.

プログラムリポジトリで、チェックインするプログラムにカーソ
ルをあわせます。

5.

メニュー 「ファイル→バージョン管理→チェックイン」を選びます。

6.

「オブジェクトのチェックイン」
ダイアログが出ますので、適当にコメントを記入して、「OK」ボタンを押します。

7.

別のチェックイン ダイアログが出るので、そのまま「チェックイン」ボタンを押します。

8.

最後に、プログラムリポジトリ全体をチェックインします。

Microsoft Team Foundation Server を使用したバージョン管理59

→ 「6.2.2 プログラムリポジトリ全体のチェックイン」に従って、プログラムリポジトリ全体をチェックインします。

参考： チェックインされたプログラムはチェックアウトしない限りはリードオンリーで、F5 でズームしても「読み込み専用でオープンします」となります。

注意： プログラムリポジトリ全体をチェックアウトした状態では、他のユーザはプログラムリポジ
トリ全体をチェックアウトできません。従って、上の手順の 2 から 8 までの間、他のユーザはプログラムの新規作成、削除、移動などが行えなくなってしまいます。これでは不便なので、プ
ログラムリポジトリ全体をチェックアウトしている期間を極力短くするように、工夫する必要があります。
今の例で言えば、3 のステップで新規にプログラムを作成したら、すぐにプログラムのチェックイ
ン、プログラムリポジトリ全体のチェックインを行って、プログラムリポジトリ全体のチェックアウト
状態を解放するようにしましょう。その上で、作成したプログラムのみのチェックアウトを行い、修正を行うようにすれば、プログラムリポジトリ全体のチェックアウト状態を最小限にすることができます。

Microsoft Team Foundation Server を使用したバージョン管理60

6.2.4. プログラムの削除
既存のプログラムを削除したい場合には、次のように行います。
① プログラムリポジトリ全体をチェックアウトする。
② 削除しようとするプログラムをチェックアウトする。
③ F3 キーでプログラムを削除する。
④ プログラムリポジトリ全体をチェックインする。

以下に手順を示します。ここでは、プログラム#2「商品管理」プログラムを削除します。
1.

既存プログラムを削除するには、まずプログラムリポジトリ全体をチェックアウトすることが必要です。

→ 6.2.1「プログラムリポジトリ全体のチェックアウト」 に従って、プログラムリポジトリ全体をチェックアウトしてください。
2.

削除したいプログラムにカーソルを合わ
せます。

3.

メニュー「ファイル→バージョン管理→チェックアウト」を選択します。

4.

「オブジェクトのチェックアウト」ダイアロ
グが出ますので、そのまま「OK」ボタンを押します。

※ ここではコメントを入力できません。

Microsoft Team Foundation Server を使用したバージョン管理

61

5.

削除の確認ダイアログが出ますので、「OK」ボタンを押します。
これで、プログラムが削除されました。

6.

最後に、プログラムリポジトリ全体をチェックインします。

→ 「6.2.2 プログラムリポジトリ全体のチェックイン」に従って、プログラムリポジトリ全体をチェックインします。

Microsoft Team Foundation Server を使用したバージョン管理62

6.2.5. プログラムの移動登録
既存のプログラムを移動登録は、以下の手順で行います。
① プログラムリポジトリ全体をチェックアウトする。
② プログラムの移動を行う。
③ プログラムリポジトリ全体をチェックインする。

以下に、プログラム#3「顧客管理」を、プログラム#4「受注管理」の後に移動登録する場合を説明します。
1.

既存プログラムを移動するには、プログラムリポジトリ全体をチェックアウトすることが必要です。

→ 6.2.1「プログラムリポジトリ全体のチェックアウト」 に従って、プログラムリポジトリ全体をチェックアウトしてください。
2.

移 動 先 の プ ロ グ ラ ム (#4「受注管理」)にカーソルをあわせます。

3.

メニュー 「編集→登録→
移動登録」を選択します。

4.

移動するプログ ラムの番号を指定して、「OK」ボタ
ンを押します。

Microsoft Team Foundation Server を使用したバージョン管理63

移動が行われました。

5.

最後に、プログラムリポジトリ全体をチェックインします。

→ 「6.2.2 プログラムリポジトリ全体のチェックイン」に従って、プログラムリポジトリ全体をチェックインします。

Microsoft Team Foundation Server を使用したバージョン管理646.2.6. プログラムの複写登録
既存のプログラムを複写登録(コピー)するには、以下の手順で行います。
① プログラムリポジトリ全体をチェックアウトする。
② プログラムの複写登録を行う。
③ 複写登録したプログラムをチェックインする。
④ プログラムリポジトリ全体をチェックインする。

以下に、プログラム#3「顧客管理」を、プログラム#4「受注管理」の後に複写登録する場合を説明します。

1.

既存プログラムを複写登録するには、プログラムリポジトリ全体をチェックアウトすることが必要です。

→ 6.2.1「プログラムリポジトリ全体のチェックアウト」 に従って、プログラムリポジトリ全体をチェックアウトしてください。
2.

複写登録先のプログラム(#4「受注管理」)にカーソ
ルをあわせます。

3.

メニュー 「編集→登録→
複写登録」を選択します。

4.

複写元のプログラムの番号を指定して、「OK」ボタ
ンを押します。

Microsoft Team Foundation Server を使用したバージョン管理

65

5.

複写したプログラムをバー
ジョン管理サーバに登録するため、チェックイン ダ
イアログが出ますので、そのまま「チェックイン」ボタ
ンを押します。

6.

この状態では、複写したプログラムはチェックアウト状態になっているので、そのまま編集が可能です。必要に応じて、プログラムを編集してください。

7.

プログラムをチェックインします。
複写したプログラム(#5 顧客管理) にカーソルを あ
わせ、メニュー 「ファイル→バージョン管理→チェックイン」を選びます。

8.

「オブジェクトのチェックイ
ン」」ダイアログが出るので、適当にコメントを指定して、「OK」ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理

66

9.

別のチェックイン ダイアロ
グ が出 る ので 、そ のま ま「チェックイン」ボタンを押します。

10. 最後に、プログラムリポジトリ全体をチェックインします。
→ 「6.2.2 プログラムリポジトリ全体のチェックイン」に従って、プログラムリポジトリ全体をチェックインします。

Microsoft Team Foundation Server を使用したバージョン管理67

6.2.7. プログラムの上書き登録
既存のプログラムを上書き登録するには、以下の手順で行います。
① プログラムリポジトリ全体をチェックアウトします。
② 上書き先のプログラムをチェックアウトします。
③ プログラムの複写登録を行う。
④ 複写登録したプログラムをチェックインする。
⑤ プログラムリポジトリ全体をチェックインする。

以下に、プログラム#6「商品管理 NEW」を、プログラム#2「商品管理」に上書き登録する場合を説明します。

1.

既存プログラムを上書き登録するには、まず、プログラムリポジトリ全体をチェックアウトすることが必要です。

→ 6.2.1「プログラムリポジトリ全体のチェックアウト」 に従って、プログラムリポジトリ全体をチェックアウトしてください。
2.

上書き先のプログラム(#2「商品管理」)にカーソルをあわせます。

3.

メニュー「ファイル→バージョン管理→チェックアウ
ト」を選びます。

Microsoft Team Foundation Server を使用したバージョン管理

68

4.

「オブジェクトのチェックア
ウト」ダイアログが出るので、そのまま「OK」ボタンを押します。

※ ここではコメントを入力できません。
これで、上書き先のプログラムがチェックアウト状態になります。

5.

メニュー 「編集→登録→
複写登録」を選択します。

6.

上書き元のプログラムの番号を指定して、「OK」ボ
タンを押します。

7.

上書き確認のダイアログが出ますので、「OK」ボタンを押してください。

Microsoft Team Foundation Server を使用したバージョン管理69

プログラムが上書きされました。

8.

プログラムをチェックイン
します。
上書きしたプログラム(#2
商品管理 NEW) にカー
ソルをあわせ、メニュー「ファイル→バージョン管理→チェックイン」を選びます。

9.

「オブジェクトのチェックイ
ン」」ダイアログが出るので、適当にコメントを指定して、「OK」ボタンを押します。

10. 別のチェックイン ダイア
ログが出るので、そのま
ま「チェックイン」ボタンを押します。

11. 最後に、プログラムリポジトリ全体をチェックインします。
→ 「6.2.2 プログラムリポジトリ全体のチェックイン」に従って、プログラムリポジトリ全体をチェックインします。

Microsoft Team Foundation Server を使用したバージョン管理70

6.3. 個々のプログラムのバージョン管理
6.3.1. 特定の既存のプログラムのチェックアウト
既存の特定のプログラムをチェックアウトするには、次のようにします。
ここでは、プログラム＃２ 「商品管理」をチェックアウトする場合です。

1.

プログラムリポジトリで、修正しようとするプログラムにカーソルを合わせます。

2.

メニュー 「ファイル→バージョン管理→チェックアウ
ト」を選択します。

3.

「オブジェクトのチェックア
ウト」ダイアログが出るので、そのまま「OK」ボタンを押します。

※ ここではコメントを入力できません。

Microsoft Team Foundation Server を使用したバージョン管理

71

4.

プログラムがチェックアウト状態になり、プログラムを修正できるようになります。

参考： チェックアウトしているオブジェクトを他のユーザがチェックアウトしようとする場合、例えば、ユーザ
magicusr1 でチェックアウトしておいて、他の PC からユー
ザ magicusr2 で更にチェックアウトしようとすると、「Prg_2
は既に他のユーザがチェックアウトしています」というようなメッセージが出て、チェックアウトはできません。

Microsoft Team Foundation Server を使用したバージョン管理72

6.3.2. チェックアウトしたプログラムのチェックイン
1.

チェックインしたいプログラムにカーソルをあわせます。

2.

メニュー「ファイル→バージョン管理→チェックイン」 を選択してチェックインします。

3.

「オブジ ェクト のチェッ クイン」ダイアログが出るので、コメントを記入して「OK」ボ
タンを押します。

4.

別の「チェックイン」ダイアロ
グが出ますので、そのまま「チェックイン」ボタンを押します。

以上で、チェックインが完了です。

Microsoft Team Foundation Server を使用したバージョン管理73

6.3.3. チェック取消
チェックアウトをして修正した内容を全て取り消す場合、チェックアウトしたこと自体を取り消す場合には「チェック取消」を行うことができます。
1.

チェック取消をしたいプロ
グラムにカーソルを置きます。

2.

メニュー 「ファイル→バージョン管理→チェック取消」
を選択します。

3.

右図のような警告メッセー
ジが出ますが、そのまま「はい」ボタンを押します。

4.

チェックアウト中に修正した内容はすべて取消され、チェックイン状態になります。

Microsoft Team Foundation Server を使用したバージョン管理74

6.4. その他の操作
6.4.1. 最新プロジェクトの取得
開発途中にあって最新のプロジェクトが必要な場合、「最新プロジェクトの取得」を実行します。
例えばユーザ magicusr1 が既に以下のようなプロジェクトを作成し、全てのオブジェクトがチェックインされていたとします。

ユーザ magicusr2 はまだプログラムを開発していません。

ここで magicusr2 が開発を始めるのに現在 magicusr1 がチェックインしたところまで、プロジェクト全体の最
新バージョンを取得する必要があります。このようなときには、「最新プロジェクトの取得」を行います。
1.

メニュー「ファイル→バージョン管理→最新プロジェク
トの取得」を選択します。

Microsoft Team Foundation Server を使用したバージョン管理

75

2.

確認ダイアログが出て「指定したプロジェクトの最新バージョンを取得しますか？」と聞かれので、「はい」をクリックします。

3.

ダイアログ「最新バージョンの結果を取得」が表示され、バージョン管理システ
ムはプロジェクト内にある全てのオブジェクトの最新バージョンを取得します。
「Close」を押します。

4.

プロジェクト全体を全て最新のものに更新できました。

Microsoft Team Foundation Server を使用したバージョン管理76

6.4.2. 最新バージョンの取得
プロジェクト全体ではなく、個々のオブジェクト (各リポジトリ、個々のプログラム) について、最新バージョンを取得することができます。

たとえば、ユーザ magicusr1 ではプログラムの＃３と＃４が更新されてチェックインされているとします。

一方、ユーザ magicusr2 ではまだ更新を始めていません。

この状態で、プログラム#3「顧客管理」だけを最新バージョンに更新したい場合には、次のようにします。
1.

最新バージョンを取得した
いプログラムにカーソルを置きます。

Microsoft Team Foundation Server を使用したバージョン管理

77

2.

メニュー「ファイル→バージョン管理→最新バージョンの取得」を選択します。

3.

確認ダイアログが出るので 、「 OK 」ボ タ ンを 押 します。

プログラム＃３が最新バージョ
ンになりました。

Microsoft Team Foundation Server を使用したバージョン管理78

6.4.3. 履歴の表示
チェックインをするたびに各オブジェクトにはバージョンが設定されます。バージョン管理システムは各バージョンのオブジェクトを保存しているので、過去の履歴を見ることができ、また過去のバージョンを取得することができます。
例えば、プログラム＃３「顧客管理(更新後)」の履歴を見るには、次のようにします。

1.

履歴を表示させたいプロ
グラムにカーソルを置きます。

2.

メニュー「ファイル→バージョン管理→履歴」を選択します。

履歴画面が表示されます。

Microsoft Team Foundation Server を使用したバージョン管理796.4.4. 差分
オブジェクトをチェックアウトして開発している時にオリジナルのソースとの相違を XML レベルで比較することができます。
例えば、プログラム#3 をチェックアウトし、いくつかの修正を加えた状態を考えてみます。
ここで、修正前の状態と、差分を表示させるためには、次のようにします。

1.

差分を表示させたいプログラム(プログラム#3)にカーソルを置きます。

2.

メニュー 「ファイル→バージョン管理→差分」を選択します。

3.

差分比較のダイアログが出ますので、そのまま「OK」ボタンを押します。

Microsoft Team Foundation Server を使用したバージョン管理80TeamExplore に内蔵の比較プログラムで、XML ファイルが比較表示されます。

注意： 相違点の比較は、確認のための参照だけに限るようにしてください。不用意に編集すると、内部番号の参照などのリポジトリの整合性が壊れてしまう可能性があります。

Microsoft Team Foundation Server を使用したバージョン管理816.4.5. 過去のバージョンの取得
時には、修正のやりなおしが必要になる場合があります。例えば、あるプログラムに機能追加を行いチェックインしたが、その実装方法に問題が見つかったので、もとに戻し、改めて別の方法で追加機能の実装を行う、というような場合です。このような場合には、最新バージョンではなく、過去のバージョンを取得することが必要になります。
TFS では履歴から過去の特定のバージョンを取得することが可能です。
注意：

過去のバージョンを取得するためには、TFS の「チームプロジェクトの設定」で、「チェックアウト
時の最新バージョンの取得を有効にする」をオフにしておく必要があります。過去のバージョンを取得したのに、チェックアウトしたら最新バージョンになってしまう場合には、この設定を確認してください。 (3.4.3 「チーム プロジェクトの設定変更」参照)



過去のバージョンを取得すると、他のオブジェクトとの整合性がずれる可能性があります。例えば、プログラムを 3 日前のバージョンに戻すと、テーブルリポジトリやモデルリポジトリなどもその時点でのバージョンに戻す必要が出てくるかもしれません。

次に、プログラム#4 の、過去のバージョンを取得する方法を示します。
プログラムリポジトリでプログラ
ム＃４に位置づけます。

履歴を表示します。(メニュー「ファイル→バージョン管理→
履歴」)

Microsoft Team Foundation Server を使用したバージョン管理82取得したいバージョンに位置
づけ、ポップアップメニューで「このバージョンの取得」を選びます。
これで、前のバージョンが取得されました。

取得直後には、まだチェックアウトされていないので、修正を行うためには、まずチェックアウトを行ってください。

Microsoft Team Foundation Server を使用したバージョン管理83

7. オフラインモード作業
uniPaaS のバージョン管理機能では、バージョン管理を行っていたプロジェクトを一時的にその管理下からはずして開発することを可能にします。オフラインで開発したプロジェクトは、再びバージョン管理システムに戻すことができます。
オフライン作業をする際の注意事項


オフライン作業をした後に、正しく同期をとるためには、TFS の「チームプロジェクトの設定」で、「チェックアウト時の最新バージョンの取得を有効にする」をオフにしておく必要があります。3.4.3 「チーム プロジェクトの設定変更」を参照してください。



オフラインでプロジェクトを修正する場合は、注意して行わないと、プロジェクト全体の不整合が生じる可能性があります。開発グループまたはチームで相互の連絡や打ち合わせを十分に行う必要があります。修正するオブジェクトはオフライン作業をする前に必ずすべてのオブジェクトについてチェ
ックインをしてください。 ユーザがオブジェクトをチェックアウトしたままオフラインに入ると、再接続時にオフライン作業していたと認められず、オフラインでの修正内容が無条件にオリジナルソースに反映されます。



オフライン作業は原則として、既存オブジェクトの修正だけにとどめてください。



どうしてもオフラインで新規にオブジェクト(モデル、データソース、プログラム等)を追加しなければならない時には、追加オブジェクトをリポジトリ出力し、オンラインに戻った後にリポジトリ入力する、という方法をとってください。(7.5.1 「オフラインでのプログラムオブジェクトの新規作成」参照)

オフラインでオブジェクトを削除することは同期をとる作業が複雑になるので推奨しません。

Microsoft Team Foundation Server を使用したバージョン管理847.1. オフライン動作にするにはバージョン管理下にあるプロジェクトをオフラインにするには[ファイル] -> [バージョン管理] -> [オフラインに設定] を選択します。

これで、オフラインになります。
このとき、バージョン管理のメニューはほとんどは無効になっています。

Microsoft Team Foundation Server を使用したバージョン管理85

7.2. オフラインで修正を行うにはオフライン状態では、チェックインせずに、そのままプロジェクトのオブジェクトの修正が可能です。
右図は、プログラムリポジトリですが、修正可能になっていることがわかります。

この時、修正したオブジェクトファイルにはバック
アップファイルが作られます（Prg_6_BCK.xml）

Microsoft Team Foundation Server を使用したバージョン管理867.3. オフラインで修正されたオブジェクトを確認するには
バックアップファイルが作られたオブジェクトは「オフライン変更オブジェクト」で確認することができます。
メニュー 「ファイル→バージョン管理→オフライ
ンオブジェクト」を選択します。

「オフライン変更オブジェクト」が表示されます。
右図ではオフライン中に修正したプログラム＃4「受注管理 オフラインで修正」がこのダイアログに表示されています。

Microsoft Team Foundation Server を使用したバージョン管理87

7.4. オフラインからオンラインに戻るには
uniPaaS Studio は、オフラインのプロジェクトをオープンするタイミングで、バージョン管理システムに接続するかをユーザに確認します。
このため、オフラインからオンラインに戻るには、単にプロジェクトを再オープンし、バージョン管理プロジェクトに接続することを Studio に指示します。
具体的には、次のような手順で行います。

プロジェクトをオープンします。
このとき、バージョン管理サーバに接続可能であ
れば、TFS へのログイン画面が出るので、ユー
ザ ID、パスワードを入力して 「OK」ボタンを押します。

続けて、右図のようなダイアログがでるので、「はい」ボタンを押します。

「オフライン変更オブジェクト」が表示されます。
バージョン管理システムに再接続する場合に表示されるこのダイアログには *_BCK.xml ファイルを持つ
全てのオブジェクトが表示されます。

「オフライン変更オブジェクト」ダイアログの各欄の意味は、以下の通りです。
タイトル

内

容

オブジェクト名変更したオブジェクトの名前

チェックアウトユーザ

オフラインで変更したので、ユーザは存在せず、空白になる

Microsoft Team Foundation Server を使用したバージョン管理

88



競合

バージョンは既に変更済： バージョン管理下で他のユーザが既に変更
し、チェックインした場合



競合なし： バージョン管理下で何も修正されていなければ、「競合なし」になります。

アクション

オフラインで修正した内容をどのようにオリジナルソースに影響させるか。オ
プションは次の４つ。「なし」、「最新バージョン取得」、「チェックアウトと修正内容保持」、「チェックアウトと最新バージョン取得」「アクション」欄の４つのオプションとしては、下表のような４つがあります。
アクション

オフラインでの修正内容 修正

TFS との差異

なし

保持

不可

あり

最新バージョンの取得破棄

不可なし(最新)

チェックアウトと修正内容保持

保持

可

あり

チェックアウトと最新バージョンの取得 破棄可なし(最新)

通常は、「なし」を選択して、あとで競合の確認やチェックインなどを行って、TFS のプロジェクトと同期をとるようにするのが良いでしょう。「なし」を選択したら、次のような状態になります。


オフラインで修正した内容は、そのまま保持されています。



修正内容は、TFS にチェックインされていません。したがって、TFS とローカルオブジェクトは同期して
いません。



オブジェクトは読み込み専用となっており、そのままでは修正することができません。



修正するためには、チェックインを行う必要があります。

この状態では、TFS と同期がとれていません。TFS と同期を取るためには、オフラインで変更したすべてのオブジェクトについて、次のような操作を行う必要があります。

Microsoft Team Foundation Server を使用したバージョン管理89

① オフラインで修正した内容をそのまま TFS に反映するには： オフラインで修正した内容をそのまま TFS に反映させるには、チェックアウトした上で、そのままチェックインします。
② オフラインで修正した内容を再修正するには： オブジェクトをチェックアウトして、編集可能状態にしてから、変更します。その後、チェックインします。
③ オフラインで修正した内容を破棄するには： オフラインで修正した内容が不要で、破棄して良い場合には、「最新バージョンの取得」を行います。

Microsoft Team Foundation Server を使用したバージョン管理90

7.5. オフラインでのプログラム新規作成と削除について
重要： バージョン管理システムではオフライン作業での修正は可能ですが、オフラインの状態
でプログラムオブジェクトを新規作成したり削除したりすると、全体の整合性が複雑になり、オンラインに復帰した場合に同期を正しくとることが非常に難しくなりますので、オフライン状態でのプログラムの追加・削除は基本的に行わないでください。
どうしても新規作成が必要な場合には、オフラインで作成したプログラムをエキスポートし、バージョン管理に再接続した後インポートすることでオリジナルソースに加えることができます。

7.5.1. オフラインでのプログラムオブジェクトの新規作成
1.

オフラインモードに入る前にプログラムリ
ポジトリ（Progs.xml）がチェックインされていることを確認します。それから、オフ
ラインモードに入り F4 を押して、プログラ
ムを新規作成します2.

すると、以下に警告のダイアログ「作成/削除プログラムは、バージョン管理プ
ロジェクトから手動で追加/削除する必要があります」が表示されます。

3.

「OK」を押すと、新規のプログラムが作成されます。

Microsoft Team Foundation Server を使用したバージョン管理

91

4.

このプログラムを適当に修正します。

5.

このプログラムをエキスポートします。

6.

uniPaaS Studio を終了します。

7.

uniPaaS Studio を再起動して、同じプロ
ジェクトをバージョン管理でオープンします。
確認ダイアログ「現在のバージョン管理プロジ ェクトに接続しますか？」で「はい」をクリックします。

8.

「オフライン変更オブジェクト」ダイアログが表示されます。この「プログラム」オブジェクトはプログラム
リポジトリの目次が変更されたため、Progs_BCK.xml が作成されたので、「オフライン変更オブジェク
ト」に表示されました。
ここで、「プログラム」オブジェクトに関してのアクションとして、「最新バージョンの取得」を選択します。

注意： もしもここで「チェックアウトと修正内容保持」を選択すると実際にはチェックアウトできず、プログラ
ムの内容を修正できない場合があるので、必ず「最新バージョンの取得」を選択してください。

Microsoft Team Foundation Server を使用したバージョン管理

92

9.

確認ダイアログ「最新バージョンの取得」が表示されるので「OK」をクリックします。

10. プログラムリポジトリはオフライン作業
前の状態に戻ります。

11. エキスポートしたプログラムをインポートします。

12. プログラムオブジェクトをインポートす
れば、プログラムリポジトリをチェックア
ウトしなければならないので、以下のよ
うな「入力時にチェックアウト」ダイアロ
グが表示されます。
「チェックアウト」欄にチェックを入れ、「OK」をクリックします。

Microsoft Team Foundation Server を使用したバージョン管理9313. プログラムリポジトリの「最新バージョン取得」確認ダイアログが表示されます。
「OK」をクリックします。
14. このインポートの一連の作業でチェックアウトをしながら新規プログラムは追加されましたが、それをチェックインするかどうかの確認ダイアログ「バージョンコントロール自動チェックインを行いますか？」が表示されます。
15. 新規作成したプログラムをチェックイン
した状態で開くには「はい」をクリックしてください。
この後、この新規作成プログラムを継続して修正する必要があれば、「いいえ」をクリックしてください。
16. 新規作成プログラムを追加することができました。

Microsoft Team Foundation Server を使用したバージョン管理94

7.5.2. プログラムオブジェクトの削除
重要： プログラムオブジェクトの削除はバージョン管理下で行うことをお勧めします。特にチームで開発を行う場合には、チーム内で十分な検討をしないと整合性に問題が生じる可能性があります。

もしも削除した場合には以下の警告ダイア
ログが表示されます。

更に「OK」を押すと削除のための確認ダイ
アログが表示されます。

この警告を無視して削除が行われた場合、バージョン管理再接続時に「オフライン変更
オブジェクト」において４つのアクションのいずれを選択しても、その動作は保障されません。

Microsoft Team Foundation Server を使用したバージョン管理95

Microsoft Team Foundation Server を使用したバージョン管理
Copyright © 2010,
Magic Software Japan K.K.,
All rights reserved.

第1版

2011 年 2 月 28 日

発行

〒151-0053 東京都渋谷区代々木三丁目二十五番地三号
あいおいニッセイ同和損保 新宿ビル 14 階マジック ソフトウェア・ジャパン (株)http://www.magicsoftware.co.jp/