きょろきょろ(๑´• ₃ •̀๑)

特にWeb系についてのことを書いていきたいと思います。 基本的にメモ書きみたいなものです。

Git入門

Gitとは

Gitとはプログラムのソースコードのバージョン管理ツールです.開発する上で,前回の動いていた状態にソースコードを戻したい,開発用とリリース用の別途管理や複数の人がその開発に携わっている,となるとソースコードを管理することが難しくなってきてしまいます.こういう時に,Gitというバージョン管理ツールを利用すると便利になります.

環境

Gitのインストール

Gitのインストールはこちらからしてください.
Git for Windows
その他には,GitHubのDesktopバージョンをインストールするとGitもインストールされるようです.
GitHub Desktop - Simple collaboration from your desktop
コマンドラインから以下のコマンドを実行してバージョンが表示されたらGitのインストールは完了です.
f:id:ferretdayo:20160316020920p:plain

Gitの設定

まず初めにユーザ情報を登録します.ここでのユーザ情報は,GitHubやBitbucketなどで登録したユーザ名とメールアドレスを入力した方が良いと思います.
f:id:ferretdayo:20160316021505p:plain
次に,登録したユーザ名とメールアドレスが設定されているかを以下のコマンドを実行して確認します.
f:id:ferretdayo:20160316021628p:plain
これで先ほど設定した情報が表示されればユーザ情報の設定は完了です.

Gitを使う

まず初めに,リポジトリの作成を行います.リポジトリの作成は,GitHubやBitbucketなどのWebサービスを利用します.今回はBitbucket(https://bitbucket.org/)を例として説明します.
まずリポジトリの作成で,git_testというリポジトリを作成します.
f:id:ferretdayo:20160316022618p:plain
その後,リポジトリのページが表示されると思います.そこで,"Command Line"を見ると,何をすればいいのかが書いてありますのでその通り行います.
f:id:ferretdayo:20160316023816p:plain
まず,作業用フォルダを作成します.私の環境では,XAMPPがインストールされているので,XAMPP上に作業用フォルダを作成します.フォルダ名は,なんでもよいです.
f:id:ferretdayo:20160316030649p:plain
git initは初期化,git remote add [shortname] [リモートリポジトリのURL]は,これから使うリモートリポジトリの場所を追加するという意味です.originとは,リポジトリの場所の別名です.

基本的操作

それでは,実際にGitを使ってみましょう.git_testフォルダ内にtest.txtファイルを作成し,以下の内容を書き込み保存しましょう.

Gitの練習

作成したtest.txtファイルをリモートリポジトリに送りたいと思います.手順としては,

  • add
  • commit
  • push

の順で行います.
まず初めにaddです.addはリモートリポジトリにあげるファイル/フォルダを追加します.ここではまだリモートリポジトリではまだ反映されていません.
f:id:ferretdayo:20160316030158p:plain
次にcommitです.commitは実際にaddした内容を反映させるためのコマンドです.-mオプションを付けることでコメントを付けることが出来ます.
f:id:ferretdayo:20160316030507p:plain
最後にpushです.pushはcommitした内容をリモートリポジトリに反映させるコマンドです.このコマンドは,origin(ローカルリポジトリ)からmaster(リモートリポジトリ)にpushするという意味です.このコマンドを実行すると,今回であれば,Bitbucketの方にtest.txtが表示されていると思います.
f:id:ferretdayo:20160316030520p:plain
f:id:ferretdayo:20160316133257p:plain

Mergeをしてみよう

まず初めにBranchの作成をします.Branchは,ちょっとバグの修正を行うためにメインのBranch(master)とは別のBranchを作成して分岐することで,並行して作業を行うことが出来ます.そして,バグの修正を終了した後にmasterのBranchと別のBranchを合流(今回はMerge)したりすることが出来ます.
f:id:ferretdayo:20160316135012p:plain
まず,分岐させるBranchを作成します.git branch [branch名]でBranchを作成することが出来ます.
f:id:ferretdayo:20160316135655p:plain
その後,git branchとすると現在存在するBranchが表示されます.*がついているのは,現在いるBranchを示しています.
f:id:ferretdayo:20160316135701p:plain
では,testのBranchに移動し,変更を加えてみましょう.Branchの移動はgit checkout [branch名]で出来ます.その後,git branchでtestのBranchに移動出来ていることが確認できると思います.
f:id:ferretdayo:20160316135942p:plain
次に,test.txtの編集を行います."Mergeの練習"を追記し,保存しましょう.

Gitの練習
Mergeの練習

その後,基本的操作で説明した

  • add
  • commit
  • push

を実際にやってみましょう.
今回は,pushする相手がmasterからtestに変わっています.
f:id:ferretdayo:20160316141034p:plain
それでは,BitbucketのCommitの方を見てみるとこのようになっています.
f:id:ferretdayo:20160316145147p:plain
masterのbranchでは,"first commit"で止まっていますが,testのbranchでは,今回実行した"コメントの追記"までcommitされていることが分かります.Bitbucketのソースにあるtestのbranchのtest.txtを見てもらうとこのようになっていると思います.
f:id:ferretdayo:20160316145544p:plain
さて,いよいよMergeを行います.今回はmasterのbranchにtestのbranchの内容をMergeしたいと思います.
まず初めに,masterのbranchにgit checkout masterで移動しましょう.
f:id:ferretdayo:20160316142332p:plain
masterのC:\xampp\htdocs\git_test\test.txtを見てみると,

Gitの練習

と書いてあると思います.その後,git merge testでtestのbranchをMergeします.
f:id:ferretdayo:20160316143808p:plain
そうすると,C:\xampp\htdocs\git_test\test.txtを見ると,先ほどは,Mergeの練習と書いていなかったところがmasterでも追記されていることが確認できると思います.その後,同様にadd, commit, pushを行います.
f:id:ferretdayo:20160316144007p:plain
それでは,Bitbucketの方に反映されているかをコミットの欄で見てみましょう.
f:id:ferretdayo:20160316144328p:plain
このように,masterにMergeした後のcommitが確認でき,Bitbucketのソースの欄でMasterのtest.txtを見てみると,Mergeが反映されているのがBitbucketの方でも確認できます.このようにしてMergeを行います.
f:id:ferretdayo:20160316144752p:plain