Edited at

Gitコマンド/GitHub備忘録

More than 1 year has passed since last update.

個人用の備忘録です。自分がよく使うコマンドやTipsをまとめており、適宜更新していく予定です。


始める前に

これは日本語の記事ではあまり書かれていないことですが、大学のEメールアドレスを持っていれば、Student developer packを使うことによって、通常毎月€7掛かるプライベートリポジトリを無料で持つことができます。大学のEメールアドレスをPersonal settingsのEmailsに登録しましょう。


初期設定

リモートリポジトリからのクローン git clone $URL

リポジトリの作成 git init

ssh公開鍵設定 (参考URL)

GitHubのssh公開鍵設定に自分のid_rsa.pubファイルの中身を加筆します。

クローン時に以下のようなエラーが出ることがある場合は、公開鍵の設定が必要です。

Permission denied (publickey).

fatal: Could not read from remote repository.

設定の確認 git config --list


ファイルの取扱

ファイル追加

git add ${ファイル名}

git commit -m '${変更内容}'
git push origin ${ブランチ名}

gitで管理しないファイル名一覧を.gitignoreに記載。

gitではmvではなくgit mvを使う。


作業の取り消し

git addによるステージングを取り消し git reset HEAD $ファイル名

一つ前のコミットの取り消し git reset --soft HEAD^

--softオプションはファイルを残す場合。残さない場合は--hard


ブランチ操作

ブランチ一覧表示 git branch

ブランチの作成 git branch ${ブランチ名}

ブランチの削除 git branch -d ${ブランチ名}

ブランチの切替 git checkout ${ブランチ名}

ブランチ名を指定してクローン git clone -b ${ブランチ名}


共同モデル開発におけるGitHubの利用例

GitHub を用いた共同モデル開発ワークフローの一例です。 (参考URL)


  1. リモートリポジトリの内容のマージを行わずに、最新の情報を確認する。

    (正確には、リモートのコピーをローカルにダウンロード)

    git fetch


  2. 一時作業用のブランチを作成。-bオプションによりチェックアウトも同時に実行。

    git checkout -b ${ブランチ名} origin/master


  3. 作成したブランチ内で作業をしコミット。


  4. 再度アップデート

    git pull --rebase


  5. 作業中のブランチをpush

    git push origin ${ブランチ名}


  6. GitHub上でPull requestをする。Reviewerに共同作業者を追加し、承認を待つ。


  7. masterに送る (Pull requestのみで)

    git push origin ${ブランチ名}:master