git clone
クローンのときにリポジトリのフォルダ名を除外
git clone https://xxx.jp/git/project/repositoryname.git /opt/prj/app
git clone https://xxx.jp/git/project/repositoryname.git /opt/prj/app/
上記のように末尾の引数にディレクトリを指定するとリポジトリのフォルダが作られずに済む
末尾のスラッシュの有無はどちらでもよい
直前のコミットを修正(上書き)したい
git commit --amend
※pushする前のコミットを修正したいときのみ使用できる
このコマンドの利点
もしこのコマンドが無かったら、コミットしなおした分、コミットの数が増える。
しかしこのコマンドは直前のコミットを上書きするような形なので(コミットIDは変わる)、コミットの数が増えない
コマンドを使うタイミング
- 間違えてコミットしてしまった
- 作業し忘れたファイルの編集を行う
- 作業し忘れたファイルをaddする(追加し忘れたファイルもここでadd)
- このタイミングで使う
このコマンドができないこと
すでにコミットしたファイルを省くことはできない。
直前のコミットのメッセージだけ変更したい
git commit --amend -m "コミットメッセージを変更しました"
■ 修正前のコミットメッセージの一部を変えたい場合
-mオプションを省いて実行することで、修正前のコミットメッセージが入力された状態でエディタが開く。
一文字だけ変えたい、等の場合はこちらの方が楽。
直前のコミットメッセージのままコミット修正をしたい
git commit --amend --no--edit
git merge
git merge --abort
マージしたらコンフリクトが起きてたため取り消したい
git reset
参考
https://qiita.com/shuntaro_tamura/items/db1aef9cf9d78db50ffe
hardオプション
git reset --hard HEAD
- リセットする対象は今いるブランチの最新の状態
- HEADの位置はそのまま
- インデックスとワーキングツリーが1つ前のコミットの状態に戻る
git reset --hard HEAD^
- リセットする対象は最新(直前)のコミット
- HEAD・インデックス・ワーキングツリーが1つ前に戻る