Clone
リモートの変更を取り込む
origin/ブランチ名
っていうのは、ローカルに存在する、リモートと同じものが保持されてるブランチの名前。
git fetch
は、指定したリモートブランチからローカルの origin/ブランチ名
ブランチに、最新の状態を持ってくる。
git merge
は、指定したブランチを現在の作業ブランチにマージする。
マージを取り消す
conflictした時、とりあえず元に戻せる
全てのリモートブランチをfetch
未知のブランチも取れる
変更したファイルを表示
Changes to be committed
… git add
済みの変更ファイル
Changes not staged for commit
… git add
してない変更ファイル
Untracked files
… インデックスされてない (まだGitの管理下に無い) ファイル
コミットしていないファイルの変更を元に戻す
コンフリクトした時
インデックスに追加
コミット対象にするということ。新規のファイル、変更したファイル、削除したファイル、どれもインデックスに追加する必要がある。
インデックスへの追加や削除を取り消す
コミット
コミットを取り消す
HEAD^
はHEADの一つ前を表す
プッシュ
一旦バージョン管理されたものを管理外にする
リモートブランチを全て表示
ローカルブランチを全て表示
ローカルブランチを作る
現在のブランチを切り替える
リモートブランチをチェックアウトする
リモートブランチを削除する
歴史から抹消する
Git - 歴史の書き換え
※危険、要バックアップ
filter-branch
の --index-filter
に渡したコマンドを全てのコミットに対して実行し、インデックスを書き換える。よって rm
コマンドを指定すると、歴史からファイルを抹消できる。
--prune-empty
をつけると、ファイルが抹消された結果としてカラになってしまったコミットを自動で消せる。
完了後は要強制プッシュ。また、他のメンバーには再Cloneしてもらった方がいいらしい。
ログを見る
長すぎてページめくりが発生した場合、終了するには q
を入力
diffを見る
ガベージコレクション
設定
参考にさせていただいた記事
git fetch コマンドでリモートリポジトリの内容をローカルリポジトリに取り込む方法
【初心者向け】git fetch、git merge、git pullの違いについて - Qiita
git add -u と git add -A と git add . の違い | note.nkmk.me
Git の Reset, Checkout, Revert の違い - yu8mada
git config --global で設定した値を削除する方法 - Qiita
忘れやすい人のための git diff チートシート - Qiita
git logのフォーマットを指定する - Qiita
Gitリポジトリをメンテナンスして軽量化する - Qiita
git filter-branchで過去の全てのcommitから画像ファイルの追加/変更をなかったことにしてリポジトリを軽量化する - dskd
gitでリモートのブランチにローカルを強制一致させたい時 - Qiita
git diff で改行コードを無視 - Qiita
初回のコミットを取り消したいときにはgit update-refを使う - すずけんメモ