VS2010用にGithub環境を構築する その3(同期)

Visual Studio 2010のソリューションをGithubで管理するための方法紹介その3です。

今回まででGithubにローカルのVSソリューションを同期する準備が整っているのでいよいよ同期を行ってみます。

初プッシュ!

Visaul Studio を起動して新規ソリューションをローカルリポジトリのディレクトリ内に作成します。とりあえず今回はコンソールアプリをソリューションディレクトリを作成せずに作成しました。

f:id:chorusde:20120530084218p:image:w500

Gitでコントロールされているディレクトリにソリューションを作成するとソリューションエクスプローラのファイルにもGitの管理ステータスが表示されます。まだどのファイルもGitのリポジトリにコミットされていないので、+アイコン(New)となっています。

f:id:chorusde:20120530084217p:image:w400

Gitをきちんと理解していないので、コミットやプッシュと言う言葉を適当に使ってしまっていましたが、どうも調べると以下のような違いがあるようです。

Gitを活用するにはそもそもGitについて勉強しないとですね。

今回の場合、まずGitのローカルリポジトリにソリューションを追加したと言う変更をコミットしその上でリモートのリポジトリ(Github)にプッシュします。ソリューションを右クリックして[Git(master)]->[Commit]を選択します。

f:id:chorusde:20120530084216p:image:w500

Commitダイアログにて[Message]セクションに変更の説明を記述します。[Select/Deselect All]をチェックしてすべての変更を選択し[OK]をクリックします。

f:id:chorusde:20120530084215p:image:w500

コミットが完了したら、ソリューションエクスプローラをリフレッシュします。Gitのステータスが鍵マーク(Tracked)に変わりました。ただしまだ変更はローカルのリポジトリにコミットされただけなので、このリポジトリへの変更をGithubのリポジトリに反映させるためにプッシュします。

f:id:chorusde:20120530084214p:image:w400

ソリューションを右クリックして[Git(master)]->[Sync]を選択します。自動的に"origin"と言う名前でリモートリポジトリの設定が作成されているので([Manage]をクリックすると設定情報を確認できます)、[Push]をクリックして同期します。

f:id:chorusde:20120530101213p:image:w500

Githubのリポジトリのページを更新すると、ソリューションファイルが追加されていることが確認できます。

f:id:chorusde:20120530084213p:image:w500

変更をプッシュ!

ソリューションに変更を加えてgithubに同期してみます。まずProgram.csにコードを追記します。また新しいクラスファイルとしてhoge.csを追加しました。

f:id:chorusde:20120530084212p:image:w500

Githubへ同期する手順は先程と同じです。ソリューションを右クリックして[Git(master)]->[Commit]を選択しすべての変更をローカルのリポジトリにコミットします。

f:id:chorusde:20120530084211p:image:w500

コミットが完了したらGithubに同期します。ちなみにコミット完了ダイアログから直接プッシュできます。[Push]をクリックするとPushダイアログが開くので[OK]を押してそのままコミットします。

f:id:chorusde:20120530084209p:image:w500

Githubを確認すると、hoge.csが追加されています。

f:id:chorusde:20120530084208p:image:w500

Program.csの変更も反映されています。

f:id:chorusde:20120530084235p:image:w500

これでGithubでソリューションを管理する準備が整いました。といってもGitを使うスタートラインにようやく立てた感じでしょうか。活用するためにはGitを勉強、勉強ですね。