普段なにげなく使っているGitですが、人間なのでコマンドを忘れることもよくあります。
そこで、個人的によく使用するコマンドを自分用にまとめました。
取得操作
リモートからクローンする
1 |
$ git clone https://xxx/xxx.git |
リモートからクローンする(ブランチ指定)
1 |
$ git clone https://xxx/xxx.git -b <ブランチ名> |
指定したブランチを元にクローンする。
リモートから変更を取得する
1 |
$ git fetch |
リモートから変更を取得する(ローカルにマージ)
1 |
$ git pull |
作業内容をリモートに反映するまでの操作
リモートとローカルのファイルの差分を抽出する
1 |
$ git diff <ファイル名> |
ローカルの変更を確認する
1 |
$ git status |
変更したファイルを一覧表示する。
ファイルを登録する
1 |
$ git add <ファイル名> |
変更したファイルを指定して、登録する。
ファイルを登録する(すべてのファイル)
1 |
$ git add -A |
変更したファイルをすべて登録する。
ファイルを登録する(すべてのファイル・カレントディレクトリ配下)
1 |
$ git add . |
カレントディレクトリ配下の変更したファイルをすべて登録する。
ファイルの変更や追加をコミットする
1 |
$ git commit -m "message" |
登録したファイルをコミットする。
リモートにプッシュする
1 |
$ git push origin <ブランチ名> |
取り消し操作
コミットの取り消しをする
1 |
$ git reset --hard HEAD^ |
--hard:コミットを取り消し、作業ディレクトリの内容も書き換える
--soft:コミットを取り消し、作業ディレクトリの内容は書き換えない
HEAD^:直前のコミット
HEAD~{n} :n個前のコミット
ブランチ操作
ブランチ一覧を表示する
1 |
$ git branch -a |
オプションなし:ローカルのブランチのみ
-r:リモートのブランチのみ
-a:すべてのブランチ
ローカルでブランチを作成する
1 |
$ git branch <ブランチ名> |
ローカルでブランチを切り替える
1 |
$ git checkout <ブランチ名> |
ローカルでブランチを作成して切り替える
1 |
$ git checkout -b <ブランチ名> |
ローカルのブランチを削除する
1 |
$ git branch -d <ブランチ名> |
ローカルのブランチをリモートに反映する
1 |
$ git push -u origin <ブランチ名> |
リモートのブランチを元にローカルのブランチを作成する
1 |
$ git branch <ブランチ名> origin/<ブランチ名> |
リモートのブランチを元にローカルのブランチを作成して切り替える
1 |
$ git checkout -b <ブランチ名> origin/<ブランチ名> |
ブランチを統合する
1 |
$ git merge <ブランチ名> |
マージ対象のブランチに移動後、取り込み元のブランチを指定してコマンドを実行する。
退避
変更を退避する
1 |
$ git stash save |
saveは省略可
変更を退避する(メッセージ付き)
1 |
$ git stash save "message" |
メッセージを加えて退避する。
変更を退避する(新規ファイル込み)
1 |
$ git stash -u |
addしていないファイルも退避対象とする。
変更を退避する(メッセージ付き・新規ファイル込み)
1 |
$ git stash save -u "message" |
addしていないファイルも退避対象とし、メッセージを加えて退避する。
退避一覧を表示する
1 |
$ git stash list |
退避一覧を表示する。
退避に加えたメッセージもここで表示される。
退避を元に戻す
1 |
$ git stash apply stash@{0} |
git stash apply stash名 で退避を元に戻す。
stash名の指定がない場合、直近の退避を元に戻す。
退避を削除する
1 |
$ git stash drop stash@{0} |
git stash drop stash名 で退避を削除する。
退避一覧を削除する
1 |
$ git stash clear |
退避一覧すべてを削除する。