ENTRANCE

都内でエンジニアやってます。主にRubyとJavaを書いて遊んでる人のブログ。楽しくのんびりとがモットー。

【Git】よく使うGitコマンド一覧

Gitコマンドをすぐ忘れてしまうので備忘録

初期設定からプッシュまで

$ git config --global user.name "User Name"
$ git config --global user.email email@example.com
// 一回だけでOK
$ git init
// プロジェクトのルートディレクトリで
$ git add -A
$ git commit -m "コミットメッセージ"
$ git remote add origin https://<github 又は bitbucket のリモートディレクトリ>
$ git push -u origin --all

git config のいろいろ

configの確認
【一覧表示】
$ git config -l

【個別表示】
$ git config '設定名'
例)$ git config user.name
configの設定・変更
【一つを指定して設定・変更】
$ git config '設定名' '設定したい値'
例)$ git config user.name hogehoge

【configファイルを直接編集】
$ git config -e

ブランチのいろいろ

【ローカルブランチを確認】

$ git branch
// *が付いているブランチが現在のブランチです!!

【リモートブランチを確認】

$ git branch -r

【全てのブランチを確認】

$ git branch -a
// 全てのローカル・リモートブランチを表示
// あるはずなのに表示されない場合は次のコマンドで、ローカルの更新をしてください!
$ git fetch

【ブランチ名で検索して表示】

$ git branch | grep '検索ワード'

【ブランチの作成】

$ git branch "作りたいブランチ名"
例)git branch "feature/sample"

【ブランチの切り替え】

$ git checkout "切り替えたいブランチ名"

【ブランチの作成&切り替え】

$ git checkout -b "ブランチ名"

【ブランチの複製(コピー)】

$ git checkout "コピー元のブランチ"

$ git branch -c  "作成するブランチ名"

【ブランチの名前を変更する】

$git branch -m "変更前のブランチ名" "変更後のブランチ名"
// 変更したいブランチ上にいる場合は、'変更前のブランチ名'は省略可能です!!

【ローカルブランチを削除する】

$ git branch -d "ブランチ名"
// マージ前のブランチは -d を -Dに変更して実行してください!!

コミットのログをみる

$ git log

// こんな感じに出力されます↓
commit **c7*****9b*a928***0f1b8******e65eb***0 // コミット番号
Author: ユーザーネーム <メールアドレス>
Date:   Thu Dec 27 00:56:13 2018 +0900

    コミットメッセージ

【コンパクトに表示】

$ git log --oneline
// こんな感じに出力されます↓
00afad4 (HEAD -> feature_hoge) hogeをhogehoge
コミットのハッシュ値 (ブランチ) コミットメッセージ

git add を取り消したい

【全て取り消し】

$ git reset

【指定ファイルを取り消し】

$ git reset 'ファイル名' 
例)$ git reset index.html

git commit を取り消したい

【直前のコミット取り消し】

$ git reset --'オプション' HEAD^
// オプションはhard 又は soft から選択可能
// hardを選択するとファイルの編集内容も取り消され、softの場合はファイルの編集内容は残る(git add された状態になります)。

【特定のコミットを取り消す】

$ git revert 'コミット番号'

コミット番号の調べ方はコミットのログをみるを参照してください

コミットメッセージを変更したい

【直前のコミットメッセージを変更】

$ git commit --amend -m "修正後のメッセージ"
// もしgit push後であれば、修正後にもう一度
$ git push -f
強制的にプッシュしましょう!

【過去のコミットメッセージを修正】

コマンド一つで編集が出来ない?ので別の機会に!