Edited at

Git - Githubの基本


Gitとは

ソースコード等、ファイルのバージョン管理を行うためのツールのこと。

このようなツールを利用することで、複数人で並行して開発を進めることができ、過去の修正履歴に戻すことも可能。

チームでの共同開発を行う場合には、バージョン管理ツールが必須。


Githubとは

gitの仕組みを利用して、オンライン上でソースコードの共有を行えるようにしたサービスのこと。


Gitの構成

Gitがファイルの状態を保存する場所について整理。


  • ワーキングツリー(今作業しているファイルのある場所)

  • インデックス(コミットするためのファイルを登録する場所)

  • ローカルリポジトリ(リモートリポジトリに変更内容を送信するための場所)

  • リモートリポジトリ(複数人でファイルを共有するための場所)


バージョン管理の流れ

Gitでのバージョン管理は基本的に以下のような流れになる。


  • ローカルリポジトリの作成(git init)

  • 変更ファイルをインデックスにあげる(git add)

  • 変更履歴を保存する(git commit)


Gitを使うための準備

$ git init

ローカルリポジトリの作成を行う


共有したいファイルの選択

$ git add ファイル名

— 省略形
$ git add .
(全ての変更ファイルが対象となる)

変更ファイルをインデックスに上げる


選択したファイルを記録する

$ git commt -m "メッセージ"

変更履歴を保存(コミット)する

※修正内容をわかりやすく記載すること!


ローカルリポジトリにリモートリポジトリを紐付ける

$ git remote add origin (Githubリモート名URL)

ローカルに存在しているorigin とGithubに存在するリポジトリのURL とを紐付ける。


リモートリポジトリをローカルにコピー(クローンを作成)する

$  git clone (Githubリモート名URL)

Githubに存在するリポジトリをローカルにclone(コピー)して作業を行う際に使用する。


リモートにファイルをアップロードする

$  git push origin master

Github上のリポジトリにローカルファイルをpush(アップロード)する際に使用する。

※通常、masterではなくbranch にpush する。

(例:$ git push origin (ブランチ名称)


ローカルリポジトリにリモートリポジトリをコピーする

$ git pull origin master

"master"の部分には、取得したいブランチを記載する。


Gitコマンド一覧


変更したファイルの把握

修正されたファイルを確認することができる

$ git status

・赤色: 修正ありのコード(add未完了)

・緑色: add済みのコード


変更内容の確認(差分)

$ git diff

・赤色: 変更前のコード

・緑色: 変更後のコード


コミットメッセージの確認方法

$ git log

$ git log -p(変更内容を確認する場合)

を実行することで特殊な表示に切り替わり確認可能。(「q」を押すことで終了)


gitで管理できているかの確認

$ ls -a

「.git」 ファイルが存在していればOK