とかなんとか煽ったタイトルですが簡単でした。ryosmsです

前回のエントリでTeam Foundation Serviceに無料プランがあることを知ったので、さっそくアカウントを作成して遊んでみました。
とは言え、メインで使ってるマシンはMacのため、Visual Studioをインストールすることはできない(こともないけどめんどくさい)ので、Visual Studioを使わずにリポジトリの操作ができないかなぁと思って試してみました。

以下手順

1. Sign up
 Team Foundation Serviceのトップページから、右上のほうの[Sign up for free]をクリックする。
 (既にアカウント持っている場合は[Sign in]して4まで飛ばす)
01_sign_up

2. アカウント作成
 アカウント(URL)を決定する
02_account_creation

3. Microsoftアカウントでサインインする
 アカウントを持ってない場合は作成する
03_sign_in

4. 新規Gitプロジェクトを作成する
 [New team project + Git]をクリック
04_start_page

5. プロジェクトの設定を行う
  • [Project name]と[Description]を入力する
  • [Process template]を適当に選択する
  • [Version control]はGitを選ぶ
05_new_project

6. プロジェクトの作成中
 作成が完了するまで待つ
06_creating_project

7. プロジェクトの作成完了
 [Navigate to project]をクリックしてプロジェクトページに移動する
07_complete_project

8. プロジェクトのHOMEページ
 こんな感じ
08_project_page

9. CODEページ
 リポジトリが空だと以下のようなメッセージが出てくる
 「リポジトリをVisual Studioを使わずにcloneするには、Profileで[alternate credentials]を有効にしなさい」的な注意書きがある
09_repository_description

10. Profileダイアログ
 さっきのメッセージのリンクをクリックするか、画面右上の[My Profile]からProfileダイアログを開く
 [Enable alternate credentials]をクリック
10_profile_page

11. credentialsの有効化
  • [User name(primary)]はアカウントのメールアドレスがセットされていて編集不可
  • [User name(secondary)]は好きなユーザー名を付けることができる
  • [Password]はパスワード(そのまま)
 入力したら[Save changes]をクリックする
11_edit_profile

12. git clone
 「9. CODEページ」で出てたメッセージに書かれていたコマンドを実行する
git clone https://[user account].visualstudio.com/DefaultCollection/_git/[project name]
 ユーザー名とパスワードを聞かれるので、「11. credentialsの有効化」で設定したユーザー名とパスワードを入力する
 ※ユーザー名は[primary]、[secondary]のどちらでも可

13. 適当にファイル追加&編集してコミット
 省略

14. Git Push
 普通にpushする
 ここでもユーザー名とパスワードを聞かれるので入力する

15. 結果
 CODEページにpushした内容が出てくる
 ※さすがにMarkdownをいい具合に表示するとかはないっぽい
12_code_explorer


まとめ
というわけで、Team Foundation Serviceの新規サインアップからGitプロジェクトの作成→clone→pushまでやってみました。
やってみるまでは、最初はサポートされているIDEからcloneしておいてgit remote -vとかでゴニョゴニョする必要があるのかなぁと思ってたんですが、普通にアドレス書いてあって拍子抜けしました。
当たり前ですが、このやり方で使えば普通のGitリポジトリに対する操作と変わりありませんでした。
(ただし、fetch/pull/push等のremote操作の度に毎回ユーザー名とパスワードを入力する必要があるのでゲフンゲフン)
remoteとのやり取りはVisual Studio(or Eclipse, XCode等のTFSがサポートしてる環境)から行なって、ローカルでの操作のみ、使い慣れたツール(Terminal, SourceTree, GitExtensions等)を使うようにしたらまだ使いやすいのかな?
まだ使ってない機能とかもあるので、もうちょっと使ってみます

追記:

はい、git credential使ったら毎回ユーザー名/パスワードを入力しなくてもよくなりましたね。ひむひむマジひむひむ
使い方はgit を https 経由で使うときのパスワードを保存する - Qiitaが詳しかったです