subversionのような省略ワードはエイリアス設定すれば自分でつくれるようだ。
エイリアス設定 git config --global alias.st status ※--globalは個別リポジトリに限定しない全体的な設定 ※configの場所は、.git/configにある。テキストファイル。
リポジトリつくる git init
リポジトリにファイルを追加する ※addしてもaddしたときの内容がインデックスに反映されるだけらしい。 ※add後に修正したらもう一回addしないといけない。 git add file
状態みる git status
作業者の設定 git config --global user.name '名前' git config --global user.email 'Eメール'
コミット git commit -m 'コメント' --author='doraemon doraemon@gmail.com' ※addもあわせて行う場合は、git commit -aとやる。こうすると作業ディレクトリの内容をインデックスに反映してからコミットするらしい。Untrakingファイルは-aとやっても勝ってに追加はされない。
エディターを設定する export GIT_EDITOR=vim ※bashの場合
コミットログをみる git log
コミットをみる git show コミットID ※IDなしの場合は最新を表示
コミットの差分をみる git diff コミットID コミットID
ファイルの削除 git rm ファイル名 ※システムからファイルが消える
ファイル名変更 git mv ファイル名 ファイル名 ※システムのフィアル名も変わる
リポジトリのコピーをつくる git clone パス パス
コミットのグラフを表示する gitk ※なんとWishとかいうGUIな画面が表示された。
二分探索で悪いコミットを探す git bisect
ファイルの各行の最後にコミットした人とコミットIDを得る git blame ファイル
ブランチをつくる git branch ブランチ名 ベースのコミット ※ベースのコミットIDがない場合は、カレントブランチの最新コミットを使う ※コミットの代わりにブランチ名でもよい
ブランチの一覧を表示する git branch
ブランチの詳細表示 git show-branch
ブランチを切り替える git checkout ブランチ ※インデックスにコミット前の変更がある状態で、ブランチを切り替えても競合しなければエラーなく切り替わり、インデックスの変更内容は引き継がれる。
ブランチをつくって、その場で切り替える git checkout -b ブランチ名 ベースのコミット
ブランチを削除する git branch -d ブランチ名 ※カレントブランチは削除できない ※カレントブランチにマージしていないブランチを削除はできない(削除するには-dではなく-Dにする)
マージする git merge ブランチ名
競合を調査する1 git diff ※競合している箇所を表示する
競合を調査する2 git log --merge -left-right -p
mergeのリセット git reset --hard HEAD ※mergeのコミット前に実施
bareリポジトリをクローンする git clone --bare hoge hoge.git
originリモートを追加する git remote add origin 場所
リモートを削除する git remote rm リモート
pushする git push origin
pullする git pull
アップデートする git remote update
おまけ(よさげなエイリアスを考えてみる) status -> st commit -> ci commit -a -> ca diff -> df branch -> br merge -> mg checkout ->chk とかかなー?