Taka blog

プログラミングとか

gitでよく使うコマンド一覧

コマンド一覧を、3グループに大別しています。

コマンド省略設定

git config --global alias.省略後 省略前

設定例

git config --global alias.co commit
git config --global alias.br branch
git config --global alias.ch checkout

クローンに関するコマンド

クローンする

git clone リポジトリ名

ブランチまたはタグを指定してクローンする

git clone リポジトリ名 -b ブランチ名またはタグ名

ブランチに関するコマンド

既存のブランチにチェックアウトする

git checkout ブランチ名

新たなブランチを作りチェックアウトする

git checkout -b 新ブランチ名

新ブランチの状態はコマンド実行時のブランチの状態と同じになる

リモートブランチをローカルに持ってくる

git fetch
git checkout リモートブランチ名

ブランチ一覧を確認する

git branch

指定のローカルブランチを削除する

git branch -d ローカルブランチ名


作業内容の更新に関するコマンド

ローカルをリモートの同名ブランチの状態に更新する

git pull

ローカルをリモートのブランチorタグorコミットの状態に更新する

git pull origin リモートXXX名:ローカルブランチ名

競合が無ければctrl + X、有ればコンフリクトを解消する

リモートブランチにリベースする

git pull --rebase origin リモートブランチ名

最新のリモートブランチの内容をローカルの作業ブランチに取り込みたいときに使います。

全てのファイルをコミット対象に追加する

git add .

指定のファイルをコミット対象に追加する

git add ファイルパス

コミットする

git commit -m "コメント"

commitのコメントを修正する

git commit --amend -m "コメント"

複数のコミットを1つにまとめる(スカッシュする)

別チーム記事に書きました。

takaittakait.hatenablog.com

指定のローカルブランチから指定のリモートブランチにプッシュする

git push origin ローカルブランチ名:リモートブランチ名

現在のローカルブランチと同じ名前のリモートブランチにプッシュする

git push

初回は失敗するのですが、出力されるコマンドを入力すると、pushされて次回以降は上のコマンドだけでpush可能になります。

git push origin ブランチ名

ローカルで更新した内容を元に戻す

git checkout .

直前のコミットを打ち消す。ただし変更内容は残る。

git reset --soft HEAD^

直前のコミットを打ち消す。変更内容も消える。

git reset --hardt HEAD^

変更内容を退避する

git stash -u

変更内容を退避すれば、リモートの資材をpull(merge)できます。

退避した変更内容を元に戻す

git stash apply

変更内容は全てadd前の状態になるので、戻したらaddとcommitが必要です。

stashを利用することで、リモートの内容をローカルに取り込み、その後に新たなコミットを作成できます。


備考

リポジトリから指定のコミットをクローンする

いきなり指定のコミットをクローンすることはできない。

  1. まずは、持ってきたいコミットより前のコミットが最新のコミットであるブランチをクローンする(developなど)。
  2. 次に、持ってきたいコミットをpullする