gitコマンドの使い方
バージョン管理ツールgit
の簡易的な使用方法をメモ。導入部分は省く。
リモートとの通信にはssh
を使用する。
基本
clone
リモート(Git
のサーバー)からリポジトリをローカル(自分のパソコン)に複製する。
git clone [remote URL]
でカレントディレクトリにそのリポジトリのディレクトリが複製される。[remote URL]
はGitHub
から確認する。
'GitHub'に行きcloneしたいリポジトリのページまで移動する。緑色の<>Code
を押しLocal
のClone
のSSH
からコピーする。
add
ローカルで変更したファイルなどをリモートにあげるファイルを選択する。
git add [ファイル名1] [ファイル名2] …
commit
コミットを作成しリモートにpush
する。add
したファイルをひとまとまりにする。
git commit -m "[コミットメッセージ]"
コミットメッセージには何を更新したのかなどの内容を書いておくとよい。
push
作成したコミットをリモートにあげる。git push
でリモートを更新する。
更新されたファイルなどがあるか確認
git status
で現在のリポジトリで更新されたファイルがあるかどうか、確認できる。
リモートの変更をもってくる
他の端末などで変更を加え、リモートに反映させた。手元には反映前のコードなどがある。というときにわざわざディレクトリを削除してもう一度clone
するのはめんどくさい。git pull
を使用するとリモートの変更を反映させることができる。これはgit pull origin main
と同じことをしていて、リモートのmainブランチからfetch
(変更をもってくるだけ
)とmerge
(変更を反映させる)を同時に行う。merge
するときにローカルにリモートにはない変更があった場合は、手動でmerge作業を行う必要がある。
branchを分ける
ふだんはおそらくmainブランチ、または、masterブランチを使用していると思われるが、開発用のブランチmainと更新用(リリースごと)のブランチreleaseに分けておきたいとする。mainブランチは日々の開発によりたくさんの更新が入りどのコミットでうまくいったのかがわからないこともある。ブランチは分けずにタグを作成して、そのときのコミットに戻れるという機能もあるがそれはbranchの次に紹介する。
ブランチを作成
まずはブランチを作成する。
git branch release
release
という名前のブランチがローカルに作成された。git branch
を実行すると現在ローカルにあるブランチの一覧を表示できる。
ブランチに移動する
ブランチを作成したらそのブランチに移動する。
git checkout [ブランチ名]
新しいブランチを作成していない場合は、git checkout -b [ブランチ名]
で新しいブランチを作成しそのブランチに移動することができる。
addしたりcommitしたり
あとは変更したファイルをaddしたりcommitしたりしても問題ない。push
するときはgit push origin [ブランチ名]
とすると安心感がある。
ブランチを他のブランチと同じバージョンまで持ってくる
mainブランチだけ先に進み、releaseブランチが遅れている場合、releaseブランチにmainブランチの状態にしたいなどということもあると思われる。そんなときにいちいちmainブランチからreleaseブランチにコピペするのは面倒くさい。そんなときにmerge
を使用する。
進めたいブランチにcheckout
し、git merge [進んでいるブランチ名]
を実行する。releaseブランチをmainブランチと同じ状態にしたい場合は、git checkout release
、git merge main
を実行することでreleaseブランチにmainブランチの変更を反映させることができる。
このあとにreleaseブランチにpushし、リモートにも反映させる。
ブランチの削除
ブランチが要らなくなったときに削除できるように。
git branch -d [ブランチ名]
でブランチを削除できる。これでローカルのブランチが削除された。
git push origin --delete [ブランチ名]
でリモートのブランチも削除することができる。
確認
現在ローカルにあるブランチを確認するにはgit branch
を使用する。
リモートにあるブランチも確認するにはgit branch -r
を使用する。
tag
特定のバージョンに戻りたい(リリースバージョンとか)というときにリリースを作成するという事もできるがそれでは検索などに引っかかってしまう。それが嫌だという場合はtagを作成し、そのタグに戻ればよい。
tagの作成とpush
タグを作成する前に変更などはすべてリモートに反映させておくとよい。
git tag -a [タグ名] -m "[タグのメッセージ]"
これでローカルにtagを作成する。ローカルのcommitにtagがつけられる(と思われる)。
git push origin [タグ名]
これにより、タグを作成し、作成したタグをリモートに反映することができる。
tagの確認
git tag
でローカルにあるタグを確認できる。
tagの削除
git tag -d [タグ名]
でローカルにあるタグを削除する。git push origin --delete [タグ名]
でリモートにあるタグを削除する。