[ターミナル] git/GitHub を管理する方法


概要

ターミナルを利用して、git で作業ディレクトリ(ローカルディレクトリ/リモートディレクトリ)を管理する方法についてまとめる。

ゴール

作業管理しているローカルディレクトリをリモートリポジトリ(GitHub) に紐づける

ローカルディレクトリの管理

git init //フォルダをバージョン管理の対象にする

ターミナル
git init

実行後、フォルダに「.git」という隠しファイルが生成される。
cf. git 管理をやめる

git add //記録対象の指定

ターミナル
//バージョン管理するアイテムが一つの場合
git add sample.txt

//バージョン管理するアイテムが複数の場合
git add . 

これは、以降で説明する git commit を実行するまえに毎回行う必要がある。

git commit // 変更点の記録

ターミナル
git commit -m “first commit”

必ず -m "更新内容" とセットで記載する。
入れ忘れると、Vim が立ち上がるので INSERTモード(iをタイプする)でコミットメッセージを入力する。ここでは、「write commit message」と入力する。

INSERT モードは [esc] キーで終了し、「:wq」で閉じる。

リモートディレクトリ(github) の管理

github でリポジトリを作成

[Your profile] → [Repositories] → [New] をクリック

[Create a new repository] ページが表示されるので、[Repository name] を入力する。ここでは、ローカルディレクトリとあわせて「hellogit」とする。

設定が完了したら、[Create Repository] をクリックする

画面に表示された [HTTPS] か [SSH] をコピーする
※https 通信の場合 git remote add するたびに PW を聞かれる

ローカルディレクトリを github のリモートディレクトリに紐づける

ターミナル
git remote add origin https://github.com/ub0t0/myfirstgithub.git

commit 済みのディレクトリを github に更新

git addgit commit した後に以下のコマンドを実行

ターミナル
git push -u origin master

html の公開

github pages を利用すると、 .html を静的ファイルとして公開することができる

[setting] → [GitHub Pages] → [Branch:master] → [Save] で index.html が公開され、リンクが表示される。

https://github.com/ub0t0/hellogit
index.html が読み込まれるが、index.html 以外を開きたい場合は、/ファイル名で開くことが可能
https://github.com/ub0t0/hellogit/a.html

github でファイルの中身を変更した場合

github 上で Read me ファイルの作成やファイルの中身を変更した場合は pull コマンドを利用して、ローカルリポジトリも更新する

ターミナル
git pull

github にすでにあるリポジトリをローカルで管理

ターミナル
git clone クローン元のリポジトリ

覚えておきたい確認用コマンド

git status //ステータスの表示

commit する前に、git status を実行した場合

ターミナル
git status

// 返されたメッセージ
On branch master

No commits yet

nothing to commit (create/copy files and use "git add" to track)

前回 commit した時から変更点がない場合

ターミナル
git status

// 返されたメッセージ
nothing to commit, working tree clean 

前回 commit した時から変更点がある場合
(例)「a.text」というファイルを新規で作成した場合のメッセージ

ターミナル
git status

// 返されたメッセージ
On branch master
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    modified:   a.txt

no changes added to commit (use "git add" and/or "git commit -a")

git log // ログの表示

いつだれが更新したかを確認することができる。

ターミナル
git log

// 返されるメッセージ
commit 一意のID
Author: 
Date:   
     commit したときの文字列

参考

【初心者】Gitコマンドの使い方を体系的に覚える【一覧あり】
【読むだけ】 Gitとは?仕組みを初心者にもわかりやすく解説【図解】
サル先生のGit入門
マンガでわかるGit