自分の業務でよく使うGitコマンドのオプションを共有します。
git-branch
-
--merged
: 既にマージしたブランチを見たい -
-m
: ブランチの名を再設定したい時 -
-d
: ブランチを削除
git-commit
-
--amend
: 直前のコミットを修正したい際に使います。ミットメッセージを変更したり、コミットに追加の変更を加えたりすることができます。
メッセージを修正する際
$ git commit --amend -m "新しいコミットメッセージ"
追加の変更を加える際
$ git add file
$ git commit --amend
-
--amend --reset-author
: authorをリセットして、現在のGitユーザー情報で上書きしたい際に使います。
git-log
-
--graph
: ブランチがどうのように分岐・統合されたのかを見たい時 -
--follow
: ファイルのリネーム前の履歴を見たい時 -
--stat
: コミットでの変更されたファイルを見たい時
git-push
-
--force-with-lease
: 強制的にプッシュを行う際に安全性を高めるために使われます。
git-rebase
git rebase
git rebase branch_1 branch_2
はbranch_bのコミット履歴を、ブランチbranch_aの最新のコミットに基づいて再構築するために使用される
A---B---C branch_2
/
D---E---F---G branch_1
rebaseを実行すると、
A’---B'---C' branch_2
/
D---E---F---G branch_1
になります。
branch_2のコミットはbranch_1のコミットの上に適用されます。
git rebase --onto
branch_3のベースはbranch_2ですが、branch_1に移動させたい場合は、--onto
を使います
o---o---o---o---o branch_1
\
o---o---o---o---o branch_2
\
o---o---o branch_3
git rebase --onto branch_1 branch_2 branch_3
を実行すると、
o---o---o---o---o branch_1
\ \
\ o'---o'---o' branch_3
\
o---o---o---o---o branch_2
になります。
他のオプション
-
--abort
: リベース前の状態に復元します -
--autostash
: 自動でstashします -
--committer-date-is-author-date
: コミットの日付を著者日(元の作成日)と同じになるように設定します
git-reset
-
--soft
: 変更内容はステージされた状態のまま残ります -
--hard
: 最後のコミットとその変更内容は完全に取り消され、元に戻せません
参考文献