はじめに
周りにgit管理をGUIで行なっている人が多く、コマンド派の自分としては
「あれ、gitコマンドって意外と難しいの…?」
ってなったので、メモ程度ですが普段使っているコマンドをまとめてみました。
なお、筆者のgit歴は1年ほどで基本的なことしか書いていません。
初心者の方の理解向上に繋がれば幸いです。
ブランチ
今いるブランチの確認
git branch
ローカルにあるブランチ一覧が表示されます。
*
がついているところが今いるブランチです。
何もcommitしていないと表示されないので要注意です。
ブランチの移動
git switch ブランチ名
指定したブランチに移動します。
移動前のブランチで作業中の内容(commit前)は新しいブランチについてきます。
git switch -c 新しいブランチ名
-c
オプションを使うことで、新しいブランチを作成しつつそのブランチに移動できます。
移動前のブランチの内容と同じところからスタートします。
バーション管理
状態確認
git status
ファイルの状況を確認します。
Changes to be committed
:内容変更していてaddしたもの
Changes not staged for commit
:内容変更していてaddしていないもの
ファイル名が出てこなければ、それは前回のcommitから変更がないということです。
addやcommit前にstatusを確認するようにするとミスが防げます。
git diff ファイル名
add前のファイルの差分を表示します。
これはコマンドで確認するよりもエディタで見る方が見やすいかもしれないです。
保存
git add ファイル名
指定のファイルをcommit対象に加えます。
複数のファイルを変更している場合でもcommitを切り分けるのに便利です。
git restore ファイル名
add前のファイルの変更内容をなかったことにします。
git reset ファイル名
addしたファイルをcommit対象から外します。
変更内容は残るので、間違えてresetした場合はもう一度addすればOKです。
git commit
addしたファイルをcommitします。
git commit
をするとコミットメッセージを入力する画面になるので、
メッセージを入力して:wq
で保存できます。
共有
自分の作業内容を他の人に共有したい時
git push origin ブランチ名
指定したブランチの内容をリモートの同じブランチ名のブランチに反映させます。
push先のブランチ名がローカルのブランチ名と異なる場合は、
以下のように":"で繋いで指定します。
git push origin ローカルブランチ名:リモートブランチ名
他の人の作業内容を自分のローカルに持ってきたい時
git fetch
git pull
fetchで他の人の差分を取得し、pullすることでその差分がブランチにmergeされます。
git fetch
git switch fetchしたブランチ名
他の人が出したプルリクを自分のローカルで挙動確認したい時など
リモートにはブランチがあるけどローカルには無いような場合には、
fetch後にswitchでそのままローカルにブランチが作れます。
最後に
初投稿だったので読みづらいところがあったかと思いますが、
最後まで読んでいただきありがとうございます。
改めて書くと自分の復習にもなりました。
間違いなどありましたらご指摘いただければと思います。