見出し画像

(勉強中)Gitコマンドまとめ

GUIに逃げてきた者による、CLI立ち向かうぞの意思を込めたまとめ。
今後さらに学んで追記前提。

clone

リポジトリを指定の場所に複製するコマンド。

git clone リポジトリURL

指定したURLのリポジトリをカレントディレクトリにクローンする

git clone リポジトリURL クローン先のディレクトリパス

指定したURLのリポジトリを指定ディレクトリにクローンする。カレントディレクトリにクローンしたくない場合や、リポジトリと同じ名称でクローンしたくない場合に使用する。

origin

ローカルにcloneしたリポジトリにリンク付けられたアクセス先を指す。「リモートのリポジトリ」とも言う。originを指定した時、常に最新が参照できるのではなく、clone/fetch/pushなどをした時の状態が参照できる。
例えば、masterブランチをcloneしたら、origin=clone時点のmasterの状態となる。

log

変更履歴を確認するコマンド。

git log

ログを出力する。リポジトリの最新ログを確認する場合はfetchコマンドを実行すること。

git log --graph

ツリー構造でログを出力する。見やすい。もっと見やすいログを出力したい場合は、gitクライアントツールをインストールして「tig」コマンドを使うと良い。

fetch

最新の内容を他のリポジトリのデータを取得するコマンド。
最新情報を取得するだけで、ローカルの作業ファイルを書き換えたりマージするコマンドではない。

git fetch origin

クローンしたリポジトリの最新データを取得する。

merge

マージするコマンド。

git merge マージしたいブランチ名

ローカルのブランチに、指定したブランチの内容をマージする。
今いるブランチを軸として、コマンドで指定したブランチの内容をマージする、という考え方。
開発ブランチの内容をmasterにコミットしたい場合、開発ブランチpush後、masterをローカルにcheckoutし、mergeコマンドを実行する。

pull

最新データを取得して、ローカルのブランチにマージするコマンド。
fetchとmergeを合わせたようなコマンド。

git pull origin ブランチ名

指定したブランチ名の最新内容を、ローカルのブランチにマージする。

diff

ブランチとの差異を確認するコマンド。

git diff

git addする前に変更した箇所を見たい時に使う。最新リポジトリの変更は未反映の状態での比較。

git diff --cached

git addした後に最新コミットとの変更箇所を見たい時に使う。

git diff HEAD^

git commitした後に、最新のコミットとそのひとつ前のコミットの差分を見たい時に使う。

git diff HEAD..origin

git pull する前に、ローカルリポジトリの最新コミットとpull先のリモートリポジトリとの変更点が見たい時に使う。

git diff 変更前のSHA..変更後のSHA

コミット同士を比較したい時に使う。コミットを特定するSHA-1ハッシュ値(git logで確認できる)を指定することで、比較できる。SHA-1ハッシュ値は最初の4文字以上を指定すれば、全ての値を入力する必要はない。

add

ローカルリポジトリの変更ファイルをコミット対象として追加するコマンド。

git add .

カレントディレクトリ配下全ての変更ファイルをコミット対象として追加する。

git add ファイル名

指定したファイル名をコミット対象として追加する。

git reset

git addの取り消しコマンド。

commit

ローカルの変更ファイルをコミットするコマンド。
(SVNであればこれだけでサーバ上のリポジトリに登録されるが、gitはこれだけではまだ登録されない点に注意)

git commit -m "コミットコメント"

コミットコメントを編集するエディタを介さずにコミットコメントをつけてコミットしたい時に使用する。複数行のコメントを残す必要がない時に使用。基本これでいい。

push

ローカルブランチのコミット履歴を、リモートリポジトリに更新するコマンド。

git push origin ブランチ名

リモートリポジトリにプッシュする。



この記事が気に入ったらサポートをしてみませんか?