よく検索するGitコマンドの覚書。自分用
gitも慣れてきたけど、たまにしか使わないのだけ覚書。
Windows8.1からLinuxの共有ファイル上でコマンド打っている。
Git for Windowsに付属している「Git Shell」がブランチ名をtab補完出来たり使いやすい。
コマンド忘れたら「-h」で確認。
# git commit -h
前のコミットに上書き
# git commit --amend
2つのコミットを1つにする
# git rebase
間違えて社内GitLabアカウントでGitHubにプッシュしてしまったとき。
Push処理後に作業していたローカルリポジトリをリモートに合わせる
# git fetch origin
# git reset origin/master
GitLab上でブランチを削除したあとに作業クライアントで同期させる(git fetchでは取りに行くだけで同期しない)
# git fetch --prune
全部追加して、特定のファイルだけ管理対象から外したいとき
# git add --all
# git rm --cached hoge.config
コンフリクトした後などに特定のファイルはorigin/masterで上書きしたい
# git checkout origin/master -- /path/to/file
設定ファイルはローカルリポジトリが正しい
# git checkout HEAD -- /path/to/file
ブランチを作る前にmasterにコミットしてしまった場合。コミットをなかったことにして、ブランチに反映させる。
# git reset --soft HEAD^
# git checkout -b develop
# git commit -m 'developing some features'
ブランチの名前付けとか参考になった
git 2.0からgit posh originのデフォルト動作が変わるらしい。今まで同じ動作にしたい場合
# git config --global push.default matching
前のバージョンを試したいとき。今やっている作業を一時退避
$ git stash
特定のブランチのmasterに取り込まれていない変更履歴表示
$ git log --oneline master..<branch>
特定のリビジョンに変更
$ git checkout 7f09696
確認が終わったら今の作業を捨てて元のブランチに戻る
$ git reset --hard
$ git checkout <branch>
一時退避したファイルを確認して戻す
$ git stash list
$ git stash apply
【2022/03/03追記】
Git 2.23からrestoreコマンドが追加された。
カレントディレクトリの変更を元に戻す
$ git restore .
git管理外のファイルをディレクトリも含めて削除。
$ git clean -f -d