Help us understand the problem. What is going on with this article?

Gitコマンド早見表

More than 1 year has passed since last update.

作業別Gitコマンド集の圧縮版

初期設定を行う
$ git config --global user.name "XXXX"
$ git config --global user.email "XXXX@hogehoge.com"
ローカルにリポジトリを作成し、リモートにプッシュする
$ git init
$ git add .
$ git commit -m "Initial commit"
$ git remote add origin https://github.com/XXXX/XXXXXX.git
$ git push -u origin master
リモートからクローンする
$ git clone https://github.com/XXXX/XXXXXX.git
リモートから変更を取得する
$ git pull
or
$ git fetch
$ git merge origin/master
ファイルの登録(コミットするため)
$ git add <ファイル名>
ファイルの変更や追加をコミット
$ git commit -m "コミットメッセージ"
ローカルの変更を確認する
$ git status
リモートとローカルのファイルの差分を抽出する
$ git diff <ファイル名>
commitの変更履歴をみる
$ git log
指定したcommitの変更点を見る
$ git show <コミットのハッシュ値>
リモートにプッシュ
$ git push origin <ブランチ名>
addの取り消し
$ git reset HEAD <ファイル名>
commitの取り消し
$ git reset --hard HEAD^

--hard:コミット取り消した上でワークディレクトリの内容も書き換えたい場合
--soft:ワークディレクトリの内容はそのままでコミットだけを取り消したい場合
HEAD^:直前のコミット
HEAD~{n} :n個前のコミット

commitの打ち消し
$ git revert <コミットのハッシュ値>
コミットメッセージの修正
$ git commit --amend "新しいコミットメッセージ"
pushの取り消し
$ git reset --hard <戻したいコミットのハッシュ値>
$ git push -f
ローカルでブランチを作成
$ git branch <ブランチ名>
ローカルでブランチを切り替え
$ git checkout <ブランチ名>
ブランチ作成 & 切り替え
$ git checkout -b <ブランチ名>
ブランチ名の変更
$ git branch -m <古いブランチ名> <新しいブランチ名>
ブランチの削除
$ git branch -d <ブランチ名>
ローカルのブランチをリモートに反映
$ git push -u origin <ローカルのブランチ名>
リモートのブランチをローカル持ってくる
$ git branch <ブランチ名> origin/<ブランチ名>
リモートのブランチをローカル持ってくる & 切り替え
$ git checkout -b <ブランチ名> origin/<ブランチ名>
全てのブランチを確認する
$ git branch -a
ブランチを比較する
$ git diff <ブランチ名> <ブランチ名>
ブランチをマージする
$ git merge <ブランチ名>
fast-forwardの関係であっても必ずマージコミットを作る
$ git merge --no-ff <ブランチ名>
ブランチをリベースする
$ git rebase <ブランチ名>

※ mergeの場合は分岐元、rebaseの場合は分岐先のブランチで実行するという点に注意してください。

変更点を一旦退避させる
$ git stash save
退避した作業の一覧を見る
$ git stash list
退避した作業を戻す
$ git stash apply <stash名>
退避した作業を消す
$ git stash drop <stash名>
退避した作業をすべて消す
$ git stash clear
ファイル削除
$ git rm -f  <ファイル名>
ファイルリネーム
$ git mv <元のファイル名> <変えたいファイル名>
ファイルを最新のコミットの状態に戻す
$ git checkout HEAD <ファイル名>
ファイルを指定コミットまで戻す
$ git checkout <コミットのハッシュ値> <ファイル名>
.gitignore を無視して追加する
$ git add -f <ファイル名>
ディレクトリだけ登録(.gitkeepをディレクトリに作成する)
$ touch <ディレクトリ名>/.gitkeep

<参考>

kohga
Role→Infrastructure, Server, Linux
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした