Git の使い方 ~リポジトリの作成とコミット~

    • このページをはてなブックマークに追加

    公開日:2017年02月16日 最終更新日:2019年09月26日

    本コラムでは、「Gitコマンド」を使ってリポジトリを初期化する方法について解説します。また、対象ファイルの変更内容を「リポジトリ」に反映する「git commit」コマンドについても説明します。「Git」をインストールしていない場合は以下関連記事を参考に、「Git」をインストールして下さい。

    最終更新日:2018年4月24日

    関連記事:WindowsにGitをインストールする方法
    関連記事:Git for Windows の使い方 ~準備編~
    関連記事:GitHub 入門 ~アカウントを作成する方法~

    目次

    1. リポジトリの初期化

    1.1. リポジトリとは?

    Git」はプログラムソースなどの変更・追加情報を管理する「分散型バージョン管理システム」です。バージョン管理システムは「Git」以外にも、サーバー上で一つのプロジェクトを集中管理する「CVS」や「Subversion」がありましたが、ローカル環境で変更履歴を管理できる分散型のシステムを使うことが多くなってきました。

    ファイルやフォルダーの変更履歴などを記録しておく場所のことを「リポジトリ」と呼びます。リポジトリの作成方法は二通りあり、管理対象のファイルやフォルダーをGitの新規リポジトリとして作成する方法とリモートなどに既に作成してあるリポジトリをローカルに「クローン(clone)」して複製する方法です。今回は新規のローカルリポジトリを作成します。

    ▲ページトップへ戻る

    1.2. ローカルリポジトリとリモートリポジトリ

    分散の名の通り「Git」のリポジトリは、ローカル環境リモート環境に作成して同期をとることができます。それぞれ「ローカルリポジトリ」、「リモートリポジトリ」と呼びます。ローカルリポジトリは一人のユーザーが自身のPC上に配置し、リモートリポジトリはサーバー上に配置して複数人で共有します。ローカルリポジトリである程度作業を行ったら、リモートリポジトリにアップロードして変更履歴を公開します。実際にローカル環境でリポジトリをどのように作成するのかを見てゆきましょう。

    ▲ページトップへ戻る

    1.3. Gitリポジトリを作成する[git init]コマンド

    使用するGitのバージョンは「Git for Windows 2.11.1」で、64bit版 Windows 10 にインストールしてあります。

    まずは、管理対象のフォルダーとファイルを作成します。「ユーザードキュメント」フォルダー内に「Git-ws」フォルダーを作成します。「Git-ws」フォルダー直下に新規ファイルの「git-sample.txt」ファイルを作成して下さい。

    ●「Git-ws」フォルダー

    Windowsのスタートメニューより[すべてのアプリ]→[Git]→[Git Bash]を選択して「Git bash」ウィンドウを起動します。

    ●「Git-ws」フォルダー

    ローカルリポジトリを作成するコマンドは、

    git init

    です。「Git Bash」のプロンプトに「git init」コマンドを入力してエンターキーを押します。

    ●リポジトリの初期化

    repository1

    コマンドの後に

    「Initialized empty Git repository in C:/Users/UserName/Documents/Git-ws/.git/」

    と出てくればリポジトリが作成された証拠です。実際のフォルダーの中身をみてみましょう。

    ●リポジトリの初期化

    「Git-ws」フォルダ内に「.git」 という名前のフォルダーが作成されます。このフォルダーの中に、リポジトリに必要なファイルが全て入っています。今はフォルダー内のファイルは管理対象ではありません。

    ▲ページトップへ戻る

    1.4. Gitのステイタスを確認する[git status]コマンド

    ステイタスを確認するコマンドを使って今の状態を確認してみましょう。「Git Bash」のプロンプトに

    git status

    と入力して「Enter」キーを押します。

    ●ステイタスの確認(git status)

    Untracked files: (use "git add ...~」というメッセージが表示され、既存ファイル(git-sample.txt)が赤色の文字で表示されています。「git-sample.txt」ファイルはまだ追跡の対象となっていないので「git add」コマンドを使って管理して下さいというメッセージです。Gitの新規リポジトリを作成したら、管理対象のファイルをGitの管理下に置く為に、Gitのインデックスに追加します。

    ▲ページトップへ戻る

    2. ローカルリポジトリをインデックスに追加する[git add]コマンド

    早速、初期化した Git のローカルリポジトリの追跡を開始してみましょう。Gitのインデックスに追加する

    git add [ファイル名]

    をプロンプトに入力して「Enter」キーを押して下さい。

    ●リポジトリをインデックスに追加(git add)

    ステイタスを確認し、「Changes to be committed:(use "git rm --cached ...~」というメッセージに変わり、追跡対象である新規ファイル名「git-sample.txt」が表示されればOKです。

    ●ステイタスの確認(Git status)

    repository4

    ▲ページトップへ戻る

    3. ローカルリポジトリへファイルをコミットする

    3.1. コミットとは?

    追跡しているフォルダやファイルの変更・追加をしたら「コミット(git commit)」をすることで、変更履歴を「ローカルリポジトリ」に記録する事ができます。

    ▲ページトップへ戻る

    3.2. [git commit]コマンドでリポジトリをコミットする方法

    追跡しているフォルダーやファイルを「ローカルリポジトリ」に追加するには、

    git commit

    を使います。「git-sample.txt」をコミットしてみましょう。

    git commit」コマンドのみ入力すると、コミットメッセージを入力する為の、テキストエディターが立ち上がりますので「-m」オプションをつけます。また、コミットする時にはメッセージの入力が必要です。

    コマンドプロンプトに

    git commit -m "projectX version 1.0"

    と入力して「Enter」キーを押して下さい。「-m "メッセージ"」でコミットの説明を追加する事ができます。わかりやすいメッセージを入力するようにしましょう。

    ●コミット(git commit)

    repository5

    ▲ページトップへ戻る

    3.3. コミット(commit)を確認する方法

    追跡対象のファイルがコミットされているか「git status」コマンドで現在のコミット状況を確認してみます。

    ●ステイタスの確認(git status)

    repository6

    「nothing to commit, working tree clean」

    と表示されます。もうコミットするファイルなどはない状態で作業スペースがクリーンになりましたという意味です。
    "working tree"は「ワーキングツリー」や「ワーキングディレクトリー(working directory)」と呼ばれることもあります。

    ▲ページトップへ戻る

    3.4. [git log]コマンドでコミット履歴を確認する方法

    コミットした履歴は、

    git log

    コマンドで確認することができます。

    ●Gitログの確認(git log)

    repository7

    「git log」コマンドに引き続き

    作者の名前とメールアドレス: 「(Author: Taro Yamada )」

    更新日時: 「Date:Fri Feb 17 23:42:50 2017 +0900」

    コミット時のメッセージ: 「projectX version 1.0」

    などがログとして表示されます。

    【関連文書】WindowsにGitをインストールする方法
    【関連文書】Git for Windows の使い方 ~準備編~
    【関連文書】Git の使い方 ~リポジトリへ変更内容を記録する方法~
    【関連文書】 Gitでブランチを作成する方法

    ▲ページトップへ戻る

    月額単価70万円〜90万円
    勤務地 東京都 渋谷区
    月額単価70万円〜80万円
    勤務地 東京都 目黒区
    月額単価80万円〜100万円
    勤務地 東京都 千代田区
    月額単価80万円〜100万円
    勤務地 東京都 千代田区
    • このページをはてなブックマークに追加

    おすすめ記事

  • ピックアップ

    フリーランス

    【Node.js】バックエンドエンジニア★アドテクノロジー関連企業向け新規開発

    月額単価 :70万円〜90万円

    今後日本でもトレンドになると言われている「Header Bidding」をはじめ アドテクノロジー関連の自社サ...

    フリーランス

    【Ruby】システムエンジニア★女性向け情報コンテンツサービス開発

    月額単価 :70万円〜80万円

    「ファッション」「グルメ」など、欲しい情報が 何でも手に入る女性向けWebアプリケーションの 開発を...

    フリーランス

    【Ruby】システムエンジニア★エネルギー会社比較サービスのWebアプリ開発

    月額単価 :80万円〜100万円

    個人の電力・ガスの自由化に伴い、 事業の勢いに乗るスタートアップ企業にて、 電力・ガスなどのエネ...

    フリーランス

    【Python】システムエンジニア★エネルギー会社比較サービスの分析開発

    月額単価 :80万円〜100万円

    電力・ガスなどのエネルギー会社の料金比較サービスを 運営するスタートアップ企業にて、 電力ビッグ...