Xamarin 日本語情報

Xamarin(ザマリン) の代理店だったエクセルソフト田淵のブログです。主に Xamarin に関するエントリーをアップしていきます。(なるべく正しい有益な情報を掲載していきたいと考えていますが、このブログのエントリーは所属組織の公式見解ではありませんのでご注意ください)

Xamarin の開発で Azure DevOps を使うには - リポジトリ編

こんにちは。エクセルソフトの田淵です。

前回 Organization を作ったので、プロジェクトを作り、リポジトリを使っていきましょう。

blog.ytabuchi.dev

リポジトリのクローン

作成したプロジェクトにアクセスします。

f:id:ytabuchi:20190815144434p:plain:w750

なにもないですね。左のメニューから「Repos」をクリックします。

f:id:ytabuchi:20190815144233p:plain:w750

プロジェクト名と同じ名前のリポジトリが作成されています。そのまま一番下のメニューで Web から Initialize しても良いですし、Git bash/macOS のシェルや、お持ちの Git クライアントでアクセスしても良いですね。

右上に「Clone on XXXX」というメニューがありますが、以下の IDE やツールが対応しているようです。

f:id:ytabuchi:20190815155216p:plain:w300

このドロップダウンに表示されているツールを Azure DevOps に接続できるように設定しておくと、このドロップダウンを選択すれば指定したツールが起動してクローンしてくれます。

上記のように Web からツールを起動する方法と、クライアント側から主体的にクローンする方法があります。クライアント側からクローンする方法をいくつか記載しておきます。

Visual Studio

一番使うであろう Visual Studio の場合です。Visual Studio を起動して、「コードを複製またはチェックアウトする」をクリックします。

f:id:ytabuchi:20190815154445p:plain:w450

「Azure DevOps」をクリックします。

f:id:ytabuchi:20190815154752p:plain:w450

Microsoft アカウントでログインすると、参照可能なプロジェクト/リポジトリ一覧が表示されるので、そのまま複製をクリックすれば OK です。

f:id:ytabuchi:20190815155005p:plain:w300

Visual Studio Code

VS Code も使う機会が多いかもしれないですね。VS Code で Azure DevOps のリポジトリにアクセスするには、拡張機能が必要です。

marketplace.visualstudio.com

こちらをインストールしておきましょう。

その上で、Git: clone コマンドでクローンします。クローンする際、またはした後で、Azure DevOps へのアクセスを求められますので、Team: SignIn コマンドでログインします。

f:id:ytabuchi:20190815184703p:plain:w450

ログインには、Personal Access Token(以下 PAT)が必要です。

f:id:ytabuchi:20190815160410p:plain:w600

後述しますが、あらかじめ PAT を作っておく(Provide an access token manually)か、VS Code の拡張機能に自動で作ってもらう(Authenticate and get access token automatically)かしましょう。

「Authenticate and get access token automatically」を選択すると、最初に 9桁くらいのコードが表示されて、それを https://microsoft.com/devicelogin の URL で入力するとログインが完了し、その後に自動で PAT を作成してくれました。

f:id:ytabuchi:20190815163357p:plain:w300

Git bash

「Clone to your computer」のレポジトリのパスをコピーして、Git bash で git clone <URL> すれば OK です。ログインが必要な場合は、恐らく自動でログインウィンドウが開き、ログインできると思います。

git-credential-manager というモジュールが自動的に PAT を作成してくれました。

f:id:ytabuchi:20190815163554p:plain:w450

Windows の Visual Studio と一緒にインストールした Git bash を使っています。Git for Windows をインストールする時に Git Credential Manager にチェックをいれるようなのですが、チェックを入れた記憶がないので、(恐らく)Git Credential Manager が標準で入るのではないか?と思いました。

Git Credential Manager については以下に詳しい説明がありました。

docs.microsoft.com

macOS の場合は、上記のドキュメントにもありますが、SSH での認証を推奨しているようです。

We recomend using SSH keys to authenticate to Azure DevOps, not a credential manager.

docs.microsoft.com

Mac 側で SSH キーを作成して、Azure DevOps に登録し認証する形です。(面倒だったので試しませんでしたw)

GitKraken

私は GitKraken という Git クライアントを使っています。

www.gitkraken.com

最近のバージョンアップでタブに対応してより便利になりました。

f:id:ytabuchi:20190815185605p:plain:w750

何より便利なのが、プロファイル別に認証を分けられることです。複数の GitHub や Azure DevOps のプロジェクトに別々のアカウントでログインが必要な時には素晴らしく便利です。

f:id:ytabuchi:20190815185800p:plain:w300

残念ながら、Azure DevOps への接続は Pro 版(年間 $49)必要なのですが、GitHub や BitBucket へのアクセスで商用利用でなければ Free 版で行けますし、プライベートリポジトリへのアクセスがある個人開発者とかなら Individual でも良いかと思います。

設定画面の「Authentication>Azure DevOps」で、組織の URL と手動で発行した PAT を指定して接続します。(PAT の手動発行は後述します)

f:id:ytabuchi:20190815190618p:plain:w750

PAT について

Azure DevOps には、SSH か Personal Access Token(PAT)でアクセスします。PAT 別に細かく権限を決められるので、同じユーザーでログインしていも、プロジェクト毎に権限の異なる PAT を提供すれば別々の権限を設定できます。(ちょっと理解が違うかもしれない!!詳しい方求む)

上記の Visual Studio や VS Code でログインすると、自動で PAT が作成されます。どんな PAT が登録されているか?は、右上のユーザーから「Security」をクリックしてください。

f:id:ytabuchi:20190815180133p:plain:w300

Visual Studio で自動生成される PAT はGit: https://dev.azure.com/<Organization名> on <マシン名> みたいな名前だったり、VS Code の拡張機能で自動生成される PAT は Azure Repos VSCode extension: https://dev.azure.com/<Organization名> on <マシン名> みたいな名前だったりします。

f:id:ytabuchi:20190815185026p:plain:w600

PAT が追加されると、Azure DevOps から以下のようなメールが飛んできますが、そこに名前や User Agent、アクセス元の IP アドレスなどが書いてありますので、後で整理する時に参考にしましょう。もちろん名前を変えてしまうのも分かりやすいですね。

f:id:ytabuchi:20190815185206p:plain:w450

Visual Studio で直接リポジトリの作業をする場合は自動発行の PAT を使用するしかありませんが、その他のクライアントを使う場合は、PAT でのアクセスに纏めても良いかなと思いました。

先ほどの PAT 一覧画面で「New Token」をクリックし、次のようなリポジトリを触れるだけの PAT を手動で発行して使いまわす感じです。

f:id:ytabuchi:20190815183426p:plain:w450

どういう運用が良いのかまだ手探り段階ですが、色々触ってみます。

次は

今回はクローンまでしかできませんでしたw とは言ってもアクセスできればプッシュも同じようなものなので、次は Xamarin プロジェクトのビルドとかを調べてみようかと思います。

Xamarin 気になった方は

Visual Studio 2019 をインストールして触ってみてください。手順書は 2017 のものですが こちらのエントリー が参考になるかと思います。 JXUG リンクページ に参考資料を纏めてますので併せてどうぞ。

エクセルソフトでは Xamarin のトレーニングサービスを行っています。基本的なアプリを手を動かし一緒に作ることで Xamarin を使えるようになって頂く内容ですが、ご要望に応じて講習内容のカスタマイズも可能です。詳しくは @ytabuchi まででお問い合わせいただくか、下記のページをご覧ください。

Xamarin トレーニング : XLsoft エクセルソフト

Xamarin の情報が欲しい方はこのブログも購読いただいたり、私のTwitterアカウントをフォローいただいたりすると嬉しいです。

私が所属している エクセルソフト の宣伝を少しさせてください。弊社は開発者向けの様々なソフトウェアを扱っています。Office/PDF ファイルを .NET/Java で操作するライブラリ Aspose(アスポーズ)、Windows アプリ、Web ページ、iOS/Android アプリの UI テストができ、RPA ツールとしても使える TestComplete などお勧めです(^^) また、Visual Studio Professional/Enterprise with MSDN も販売してますし、日本で売っていない海外のソフトウェア、開発ツールなどを弊社経由で日本円で購入頂くことも可能です。ご興味あれば覗いてみてください。

以上です。

エクセルソフト | ダウンロード | 学習用リソース | JXUG リンクページ | ブログ購読