🐡

git memo

2021/02/20に公開
用語 解説
trackファイル / untrackファイル gitの管理下にある / ない
追跡(リファレンス)ブランチ リモートリポジトリの情報をみているブランチ(リアルタイムで反映されないので実際のリモートリポジトリと差分が出ることがある)fetchで更新する
ワーキングディレクトリ/staging/ローカルリポジトリ間のやりとり コマンド
リセット
add前でワーキングディレクトリでの変更をキャンセル (ファイル指定) git restore [ファイル名]
add前でワーキングディレクトリでの変更をキャンセル (一括) git reset
add済でstagingにある変更をキャンセル (ファイル指定) git restore --staged [ファイル名]
削除反映
rmや手での削除をstagingに反映 rm [ファイル名] => git add -A
↑これを一発で(unstackファイルやstagingに作業内容があるとできない) git rm [ファイル名]
git管理から削除したいがファイルは消したくない git rm --cached [ファイル名]
git管理から削除したいがファイルは消したくない git rm --cached [ファイル名]
追跡ブランチ操作 コマンド
追跡ブランチの確認 git branch -r
ローカルブランチも追跡ブランチも確認 git branch -a
リモートリポジトリの情報を追跡ブランチに取得 git fetch
↑リモートの変更や追加は反映するが、削除は反映されず追跡ブランチに残る
削除されたリモートのブランチの情報も追跡ブランチに反映 git fetch --prune
リモートブランチ操作 コマンド
リモートブランチ接続 git remote add [リファレンス名] [ブランチ名]
リモートブランチ削除 git branch rm [リファレンス名]
リモートブランチ確認 git branch -v
ログ操作 コマンド
ログ確認 git log
ログをシンプルに確認 git log --oneline
ログの関係を線で結ぶ git log --graph
↑ブランチが枝分かれすると表示されなくなる
枝分かれした全てのブランチ表示 git log --all
枝分かれ含めシンプルに線引いて表示 git log --oneline --all --graph
コミットの詳細を確認 git show コミット番号(git logで確認)
ブランチ操作 コマンド
remoteのurl変更 git remote set-url origin {new url}
削除
marge済ブランチを削除 git branch -d [ブランチ名]
ブランチ強制削除 git branch -D [ブランチ名]
コピー
ブランチをコピー git checkout -b [Newブランチ名]
diff操作 コマンド
ワーキングディレクトリとstaging git diff
ワーキングディレクトリとHEAD git diff HEAD
stagingとHEAD git diff --staged HEAD
HEADと前のコミット git diff HEAD^ HEAD
HEADと2個前のコミット git diff HEAD^^ HEAD
Merge前の2つのコミットの片方 git diff HEAD^1 HEAD
Merge前の2つのコミットのもう片方 git diff HEAD^2 HEAD

|submodules操作|コマンド|
|submoduleも合わせてclone|git clone --recurse--submodules|

|その他|コマンド|
|コミットメッセージの修正|git commit --amend -m "修正"|

https://qiita.com/tearoom6/items/0237080aaf2ad46b1963

https://twitter.com/nkshn_pt_/status/1464144929991450628?s=20

https://qiita.com/sawadashota/items/aa312a3b7e2403448efe
https://qiita.com/OmeletteCurry19/items/85ce8cbcf7913c1f8331

git branchででた一覧がqを押すと全部きえちゃうあれ、pagerという機能らしい
一覧はcatみたいに出したまんまにしたい

git config --global core.pager cat

Discussion