第1回 Visual Studio Onlineで使える二つのバージョン管理システム連載:TFVC vs Git(6/8 ページ)

» 2015年04月17日 05時00分 公開
[亀川和史]

 コミットに必要な設定ができたら、最初のコミットをしてみよう。

最初のコミット

 コミットはチームエクスプローラーの[変更]ウィンドウで行う。チームエクスプローラーに[変更]ウィンドウが表示されていない場合には、先ほど述べたのと同様にソリューションエクスプローラーでソリューションを右クリックして、コンテキストメニューから[コミット]を選択するか、チームエクスプローラーの[ホーム]ウィンドウで[変更]ボタンをクリックする。これにより以下のような[変更]ウィンドウが表示される。

Gitでコミット(1) Gitでコミット(1)
  (1)[同期されていないコミット]ウィンドウを表示する。
  (2)コミットメッセージを登録する(必須)。
  (3)コミットを行う。
  (4)[エクスプローラーで開く]、[コマンド プロンプトを開く]、[履歴の表示]といったコマンドが登録されている。
  (5)登録済みの作業項目を検索するクエリを実行する。
  (6)作業項目のID(画像では「137」)を指定して、作業項目を追加する。複数指定可能。

 作業項目と関連付けておくと、コミットの作業を追跡できる。作業項目の作り方は以下の連載を読んでほしい。VS 2010時代の記事だが基本は変わっていない。

 コミットメッセージを入力し、[コミット]ボタンをクリックすると、コミットが実行され、次のような画面が表示される。

Gitでコミット(2) Gitでコミット(2)
  (1)作成されたコミットのハッシュ値。
  (2)リモートリポジトリに同期(この場合はプッシュ)を行う。

 ローカルのコミットが成功すると、コミットハッシュが生成/表示される。コミットハッシュとは、コミットを一意に識別するための値でGitが自動的に作成する値だ。このハッシュ値でコミットを追跡できるが、作成時点では特別意識する必要はない。

 なお、コミットを行う前であれば、コミットと同時にプッシュもしくは同期を行うことも可能だ。次回紹介するブランチとマージでこの辺りは詳しく紹介する。

Gitでコミットとプッシュ、同期 Gitでコミットとプッシュ、同期
  (1)ローカルにコミットのみ行う。
  (2)ローカルにコミットした後、リモートリポジトリに登録する。
  (3)ローカルにコミットして、リモートリポジトリの変更を反映する。

 コミットをした時点ではローカルリポジトリに登録されているだけなので、次に[同期されていないコミット]リンクをクリックして、同期されていないコミットを表示する。

Gitでコミットとプッシュ、プル Gitでコミットとプッシュ、プル
  (1)ローカルリポジトリとリモートリポジトリの同期を行う。
  (2)リモートリポジトリの変更を反映する。
  (3)リモートリポジトリに変更を出力する。
  (4)リモートリポジトリで行われた変更が表示される。
  (5)ローカルリポジトリで行われた変更が表示される。

 冒頭で説明したように、Gitにはローカルリポジトリとリモートリポジトリがある。コミットはローカルリポジトリに登録するだけなので、それがリモートリポジトリには反映されない。リモートリポジトリに反映するためには、プッシュを実行する。

 ローカルコミット後に表示される[同期されていないコミット]リンクや[同期]リンクをクリックすると、上記の画面にまだ同期されていないコミットが表示される。[入力方向のコミット]には、サーバー側で他のメンバーが更新したファイルのうち、まだローカルリポジトリに同期(pull)されていないコミットが、[出力方向のコミット]にはまだリモートリポジトリに出力していないコミット(push)が表示される。

 [プッシュ]リンクもしくは[同期]ボタンをクリックすると、リモートリポジトリにローカルコミットが反映される。

Gitの出力方向のコミット(push)が完了した状態 Gitの出力方向のコミット(push)が完了した状態
  (1)リモートの「origin/master」にプッシュされた。

 表示されたメッセージにある「origin」とは、クローンしたGitのリモートリポジトリを表す名称のことだ。この場合は、「VS Onlineで提供されているリモートリポジトリのmasterブランチにプッシュが完了した」ということになる。

 チームエクスプローラーの[ホーム]ウィンドウにある[Web ポータル]リンクをクリックするなどして、WebブラウザーでVS OnlineのWebポータルを表示し、[CODE]−[Commits]の順にリンクをクリックすると、コミットの履歴が表示される。

Gitリモートリポジトリに登録された状態 Gitリモートリポジトリに登録された状態
  (1)Gitのコミット履歴の表示。

 これで最初のコミットは完了だ。次に、今作成したソリューションのコードを修正して、その修正を追跡してみよう。

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。