Visual Studio for Mac + Visual Studio Team Servicesでソース管理する

仕事レベルのプログラム開発の場合、ソース管理は必ず必要となります。
しかし、今時は個人開発であってもソース管理は必要ですし、また、サンプルの実装をGithubで公開するといった事も日常的な事でしょう。

今回は開発環境として「Visual Studio for Mac」を、ソース管理に「Visual Studio Team Services(以下VSTS)」を使用する手順について説明します(ソース管理はGitです)。

VSTSにプロジェクトを構成する

[Step 1] プロジェクトを作成

ブラウザで自分のVSTSサイトにアクセスします。
ダッシュボード上の「Recent projects & teams」下の「New」をクリックします。

f:id:daigo-knowlbo:20161204153616p:plain

「Create team project」ウィンドウが表示されますので、必要項目を入力し「Create project」ボタンをクリックします。Version ControlはGitにします。

f:id:daigo-knowlbo:20161204153751p:plain

しばらく待つとプロエジェクトの作成が完了します。「Navigate to project」ボタンをクリックしてプロジェクトポータルに移動しましょう。

f:id:daigo-knowlbo:20161204154136p:plain

[Step 2] セキュリティ設定を実施

右上のユーザーアイコンをクリックし、表示されたポップアプメニューから「Security」をクリックします。

f:id:daigo-knowlbo:20161204154228p:plain

Personal access tokenの「Add」ボタンをクリックします。(Personal access tokenの詳細は後述します)

f:id:daigo-knowlbo:20161204154406p:plain

Descriptionを任意で入力します。アクセストークンの有効期限や認可範囲の細かな設定が可能ですが、ここではひとまずデフォルト値の90日間の有効期限、フルスコープ権限とします。画面下部の「Create token」ボタンをクリックします。

f:id:daigo-knowlbo:20161204154756p:plain

f:id:daigo-knowlbo:20161204154819p:plain

トークンが発行されますので、これをコピーして手元に保存しておきます。

f:id:daigo-knowlbo:20161204155124p:plain

[Step 3] GitのURLを取得(確認)

左上のプロジェクト選択UIから今回作成した「VsMacAndVsts」を選択します。

f:id:daigo-knowlbo:20161204155310p:plain

「Code」タブを選択します。

f:id:daigo-knowlbo:20161204155506p:plain

GitのURLをコピーします。

f:id:daigo-knowlbo:20161204155557p:plain

以上で VSTS 側の設定準備は整いました。

Personal access tokenとは

「Personal access token」は Visual Studio for Mac からVSTSへGitアクセスするために必要となるトークンです。
以下のMicrosoft公式サイトに記述があるように「Microsoftアカウント・Azure AD認証によるネイティブ認証に対応していないクライアントからの資格情報認証の為のトークン」となります。

www.visualstudio.com

具体的には、パーソナルアクセストークンはVSTSにアクセスする際の「ユーザー名に対応するパスワード」となります。

Visual Studio for Macプロジェクトの作成

では、作成したVSTSでソース管理を行うプロジェクトをVisual Studio for Macで作成します。

[Step 4] VS for Macプロジェクトを作成

Visual Studio for Macを起動して「New project...」ボタンをクリックします。

f:id:daigo-knowlbo:20161204161054p:plain

ここでは .NET Core Console アプリケーションを作成することとします。

f:id:daigo-knowlbo:20161204161155p:plain

プロジェクト名や保存場所を設定します。ここではプロジェクト名は「HelloVstsConsole」としました。
また、「バージョン コントロールに Git を使用します。」にチェックを付けます。

f:id:daigo-knowlbo:20161204161244p:plain

[Step 5] プロジェクトに対してリモートリポジトリ(VSTS)を設定

プロジェクトが作成できたら、メニュー「バージョン管理→ブランチとリモートを管理する」を選択します。

f:id:daigo-knowlbo:20161204161511p:plain

「Git リポジトリの構成」ウィンドウが表示されるので、「リモート ソース」タブを選択し「追加」ボタンをクリックします。

f:id:daigo-knowlbo:20161204161719p:plain

「リモート ソース」ウィンドウが表示されたら、任意の名前を設定し、「URL」項目にGITリポジトリのURLを設定します。
このURLは上述「VSTSにプロジェクトを構成する」の「Step 3」で取得(確認)したURLになります。

f:id:daigo-knowlbo:20161204161907p:plain

ここまでで、Visual Studio for Macにおけるプロジェクトに対する下準備が完了しました。

[Step 6] ローカルリポジトリへコミット

では、作成したHelloVstsConsoleプロジェクトのGitソース管理へのコミット作業を行いましょう。
メニュー「バージョン管理→ソリューションを確認してコミット」を選択します。

f:id:daigo-knowlbo:20161204163047p:plain

追加されたソースの一覧を表示されますので、「コミット」ボタンをクリックします。

f:id:daigo-knowlbo:20161204163217p:plain

「ファイルをコミットする」ウィンドウが表示されます。
「コミットメッセージ」を入力し、「コミット」ボタンをクリックします。
この操作により、「ローカルリポジトリ」に対するコミットが完了します。(つまり、まだVSTSのソースは更新されていません。)

f:id:daigo-knowlbo:20161204164658p:plain

[Step 7] VSTSへプッシュ

次にVSTSにソースをアップしましょう。
メニュー「バージョン管理→変更をプッシュ」を選択します。

f:id:daigo-knowlbo:20161204164848p:plain

リポジトリへプッシュ」ウィンドウが表示されます。
「プッシュ先」は先程設定した「VsMacAndVsts」を選択し、「変更をプッシュ」ボタンをクリックします。

f:id:daigo-knowlbo:20161204165020p:plain

「Git 資格情報」ウィンドウが表示されます。
「ユーザー名」には、VSTSへのログインIDを設定します。
「パスワード」には、「VSTSにプロジェクトを構成する」のStep 2で得た「パーソナルアクセストークン」を設定します。

f:id:daigo-knowlbo:20161204165212p:plain

以上で「ローカルリポジトリへのコミット」→「VSTSへのプッシュ」が完了しました。

プッシュされたソースを確認する

では、再度VSTSサイトにアクセスし、Visual Studio for Macで作成したプロジェクトコードがアップされたか確認してみましょう。
以下が VsMacAndVsts プロジェクトのCodeの表示です。Visual Studio for Macで作成したプロジェクトを確認することができます。

f:id:daigo-knowlbo:20161204165622p:plain

ソースを変更して再コミット&プッシュ

ではProgram.csを以下のように修正してみます。
(元々は「Console.WriteLine("Hello World!");」でした。)

using System;

class Program
{
  static void Main(string[] args)
  {
    Console.WriteLine("変更したよ");
  }
}

再びローカルリポジトリにコミットします。(メニュー「バージョン管理→ソリューションを確認してコミット」→コミットボタン)

f:id:daigo-knowlbo:20161204170047p:plain

続いてVSTSリモートリポジトリに変更をプッシュします。(メニュー「バージョン管理→変更をプッシュ」)

f:id:daigo-knowlbo:20161204170126p:plain

VSTSサイトを確認すると変更が正しくプッシュされたことを確認することができます。

f:id:daigo-knowlbo:20161204170138p:plain

まとめ

はい。という事で Visual Studio for Mac + Visual Studio Team Services によるソース管理(バージョン管理)の設定手順の説明となりました。
VSS / SVN / TFS / GIT・・・と多種多様なソース管理(バージョン管理)システム、そして、Eclipse / Visual Studio / Visual Studio for Mac / Visual Studio Code / Web Storm 等々の多くの開発環境が乱立しています。
各種技術を学び、適切なツール・適切なソリューションを選択して、幸せな開発生活を送りたいですね。