Gitの基本操作コマンドでローカルリポジトリ上でブランチを作成

本記事は基本的なGitコマンドを基にサンプルシェルの更新の過程でローカルブランチの作成手法を紹介する。
対象サブコマンド: init, status, add, commit, log, show, branch, checkout, tag.
※尚、各項目のコマンド説明文にgit開発元のReferenceリンクを併記している。

前提

以下の内容は本記事には含まず、既知・設定済みとして扱う。

  • バージョン管理, Gitの概要
  • Gitクライアントのインストール
  • Gitクライアントの設定(user.name, user.email等)

実行環境

OS: CentOS v7.1
Git version: 1.8.3.1

git init – ローカルリポジトリの作成

開発用ディレクトリ (≒gitではワーキングツリー[working tree])を作成し本記事ではhello_app)、そこにローカルリポジトリをgit initコマンドで作成する。
Git – git-init Documentation

当該リポジトリの管理情報は.git (隠しディレクトリ)に保管される。

続いて、ワーキングツリー直下にhello_git.shファイルを下記の通り作成する。

git status – ワーキングツリーのステイタス表示

Git – git-status Documentation

Untracked files欄にhello_git.shが追加されていることを確認できる。

git add – ファイルをインデックスエリアに追加

Git – git-add Documentation
現状はhello_git.shはコミット対象となるインデックスエリアに登録されてないため、addサブコマンドでインデックスへ登録、再度statusサブコマンドを確認する。

git commit – ローカルリポジトリに変更を登録

Git – git-commit Documentation

-mオプションは任意のコメントを付与できる。実際の開発であれば変更内容等の記載するが、その内容・形式についてPMや標準化部署から指定がある場合もある。
以下はコミットまでのファイル状態の遷移を図示したもの。
git_local_remote_file

git log – これまでのコミットログを表示

Git – git-log Documentation

因みにcommit: 右に記載されいている41桁の文字列はコミットIDと言いグローバルでユニークなハッシュ値を持つ。コミットIDを引数にgit showコマンドを実行すると、コミットID内容の詳細を確認できる。
Git – git-show Documentation

hello_git.shの修正 (その1)

下記の通り修正し、再度コミットを実施する。

[vagrant@localhost hello_app]$ git commit -a -m “Add: read name.”
[master ac1e9d9] Add: read name.
1 file changed, 3 insertions(+), 1 deletion(-)

git branch – ブランチの作成

現時点の状態をv1.0として定義し、リポジトリをmasterブランチとv1ブランチへ分ける際は下記のコマンドを使用する。
Git – git-branch Documentation

branchサブコマンドは何も引数が無い場合は、リポジトリのブランチを一覧表示する。*が付いているブランチは現在作業中のbranch となる。

git checkout – 作業ブランチの切り替え

Git – git-checkout Documentation

これ以降のコミットはv1ブランチ宛てに行われる。
下記のREADME.mdを作成の後、バージョン1.0としてコミットする。

git tag – タグの付与

Git – git-tag Documentation
直前のコミットに対してtagを付与しv1.0を付与し、その内容を確認する。

v1.0についてはこちらを完成版扱いとしてmasterブランチで次期バージョンの編集を行う。

hello_git.shの修正 (その2)

下記の通り修正する。

続いて、当該ファイルをコミットする。

当該結果にはv1ブランチが含まれていないことを確認できる。