はじめに
gitとはプログラムソースなどの変更履歴を管理する分散型のバージョン管理システムのことです。
記事を書こうと思った経緯
開発中にgithubを使用しており、コマンドが多く覚えるために記録用として。
gitコマンド集
初期設定
git config --global user.name "XXXX"
git config --global user.email "XXXX@hogehoge.com"
リポジトリを新規に作成
git init
initコマンドを実行すると、現在のディレクトリまたは指定したディレクトリに「. git」というリポジトリを構成するディレクトリが作成されます。
変更のあったファイルをステージングします
git add (ファイル名) /*特定ファイル*/
git add . /*全て*/
git add -A /*全て*/
ステージングされた変更をコミット(確定)します
git commit -m "コミットメッセージ"
前回のコミットと統合する
git commit --amend -m "コミットメッセージ"
commitした内容をローカルからリモートにpush
git push origin ブランチ名
git push origin HEAD 現在のブランチでpush
強制push
git push -f origin ブランチ名
過去のコミットを変更した際等に使用。チーム開発等を行なっている際は、チーム開発者の編集がなかったことになる恐れもあるため細心の注意が必要。
リモートからローカルに反映
git pull origin ブランチ名
github等でマージした際にローカルでは反映されていないため、このコマンドが必要。
ログ確認
git log
現在の変更ファイル確認
git status
ファイル編集をした際に確認。削除したファイルや追加したファイルが表示される。
現在の変更コード確認
git diff
コードを編集した際に確認。削除コード追加コードが表示される。
git add取り消し
git reset HEAD
git reset HEAD (ファイル名) /*特定ファイル*/
直前に戻る
git reset --hard HEAD
指定したlogに戻る
git reset --hard コミットid
コミットIDはgit logにて確認できる。
一旦コミットを退避させる
git stash
現在のブランチでコード編集している途中で、別ブランチにてコードを編集を行いたい時に使用。
退避した作業をみる
git stash list
退避した作業を戻す
git stash apply <stash名>
退避した作業を消す
git stash drop <stash名>
退避した作業を全て消す
git stash clear
リポジトリ内の最適化
git gc
リポジトリが使用するストレージを最適化。頻繁に使う必要はないが、大量マージした際に行うとよし。
ブランチの切り替え
git checkout <ブランチ名>
新規ブランチ作成
git checkout -b <ブランチ名>