Gitコマンドチートシート

公開日:2019-07-11
最終更新:2019-07-11

下のチートシートを自分なりにまとめ直したもの
https://github.github.com/training-kit/downloads/ja/github-git-cheat-sheet/

Gitのインストール

GitHub Desktop

Git コマンドライン

Gitの用語

ワークツリー -> ステージング -> ローカルブランチ -> リモートブランチ
HEAD 現在のブランチの最新のコミット
HEAD^ HEADの一つ前のコミット
HEAD~ HEADの一つ前のコミット ^とは微妙に違う
参考:【やっとわかった!】gitのHEAD^とHEAD~の違い

ツールの設定

// 設定されているあなたの名前を確認します  
$ git config user.name  
// コミット操作に付加されるあなたの名前を設定します  
$ git config --global user.name "[name]"  
// コミット操作に付加されるあなたのメールアドレスを設定します  
$ git config --global user.email "[email address]"  

リポジトリの作成

// カレントディレクトリか指定したディレクトリにローカルリポジトリを作成します  
$ git init ([directory])  
// プロジェクトとすべてのバージョン履歴を指定したディレクトリにダウンロードします  
$ git clone [url] ([directory])  

変更の作成

// コミット可能なすべての新規または変更のあるファイルを一覧で表示します  
$ git status ([file or directory])  
// ファイルの変更や削除をステージングに追加します  
$ git add [file]  
$ git add -A  // 全てのディレクトリの新規・変更・削除されたファイルを追加  
$ git add -u  // 全てのディレクトリの変更・削除されたファイルを追加  
$ git add .   // カレントフォルダ以下の新規・変更・削除されたファイルを追加  
// ワークツリーとステージングの差分を表示します  
$ git diff  
// ワークツリーと最新コミットの差分を表示します  
$ git diff HEAD  
// ステージングと最新コミットの差分を表示します  
$ git diff --staged  
// ファイルをステージングから外しますが、その内容は保持します  
// 削除したファイルは指定出来ません  
$ git reset (--mixed) [file]  
// ファイルのスナップショットをバージョン履歴内に恒久的に記録します  
$ git commit -m "[descriptive message]"  
$ git commit -am "[descriptive message]" // 変更・削除をadd commit  
// 直前のコミットメッセージを修正  
$ git commit --amend -m "[descriptive message]"  
// コミットを取り消しますが、ファイルの内容は保持し、ステージングに残ります  
$ git reset -soft HEAD^  

変更の整理

// 現在のリポジトリ上のすべてのローカルブランチを一覧で表示します  
$ git branch  
// 新規ブランチを作成し切り替えを行い、作業ディレクトリを更新します  
$ git checkout -b [branch-name]  
// リモートリポジトリのブランチをチェックアウトする  
$ git checkout -b [branch-name] [remote branch]  
// 指定されたブランチの履歴を現在のブランチに統合します  
$ git merge [branch-name]  
// 指定されたブランチを削除します  
$ git branch -d [branch-name]  

ファイル名の整理

// 作業ディレクトリからファイルを削除し、削除をステージします  
$ git rm [file]  
// バージョン管理からファイルを削除して、ローカルのファイルは保持します  
$ git rm --cached [file]  
// ファイル名を変更し、コミットします  
$ git mv [file-original] [file-renamed]  

.gitignore

nonoe  
.gitignore  
*.log  
build/  
temp-*  
// プロジェクト内のすべての除外されたファイルを一覧で表示します  
$ git ls-files --others --ignored --exclude-standard  

変更の退避

// すべての変更のあるトラックされているファイルを一時的に保存します  
$ git stash  
// 直近に一時保存されたファイルを復旧します  
$ git stash pop  
// すべての一時保存された変更セットを一覧で表示します  
$ git stash list  
// 直近に一時保存された変更セットを破棄します  
$ git stash drop  

履歴の確認

// 現在のブランチのバージョン履歴を一覧で表示します  
$ git log  
// 名前の変更を含む指定したファイルのバージョン履歴の一覧を表示します  
$ git log --follow [file]  
// 2つのブランチ間の差分を表示します  
$ git diff [first-branch] [second-branch]  
// 指定されたコミットのメタ情報と変更内容を出力します  
$ git show [commit]  

コミットの修正

// [commit]以降すべてのコミットを取り消し、ローカルでは変更を保持し、ステージングには残します  
$ git reset --soft [commit]  
// [commit]以降すべてのコミットを取り消し、ローカルでは変更を保持します  
$ git reset [commit]  
// 指定されたコミットに戻り、それ以降のすべての変更を破棄します  
$ git reset --hard [commit]  
// 指定されたコミットを打ち消すコミットを追加します  
$ git revert [commit]  
$ git revert [commit] -n // 打ち消すソースコードを作成するがコミットはしない  
$ git revert -m [1or2] [commit] // マージを取り消す  
// コミットの変更、コメントの修正、コミットの削除などを対話形式で操作します  
$ git rebase -i [commit]  

変更の同期

// リモートリポジトリを設定します  
$ git remote add origin [url]  
// リモートブランチからすべての履歴をダウンロードします  
$ git fetch [bookmark]  
// リモートブランチを現在のローカルブランチに統合します  
$ git merge [bookmark]/[branch]  
// リモートブランチの履歴をダウンロードし、ローカルブランチに変更を統合します  
$ git pull  
// すべてのローカルブランチのコミットをリモートブランチにアップロードします  
$ git push [alias] [branch]  
記事が少しでもいいなと思ったらクラップを送ってみよう!
26
+1
@hiroitaの技術ブログ

よく一緒に読まれている記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする