Git 使い方アレコレ
構成
クライアント MacBook
サーバ Linux
作業ディレクトリ myproj
初期設定
名前とメールアドレスの設定。
$ git config --global user.name "hoge"
$ git config --global user.email "hoge@mail.com"
色の設定。
$ git config --global color.ui auto
リポジトリ作成
myproj ディレクトリをリポジトリ化する。
$ mkdir myproj
$ cd myproj
$ git init
リモートサーバに空のリポジトリつくる。
$ ssh remote-host
$ mkdir myproj
$ cd myproj
$ git init --bare
ファイル追加&コミット
ファイルを追加する。
$ vi a.txt
$ git add a.txt
$ git commit -m "add a.txt"
add 取り消し
間違って add したファイルを取り消す
$ vi b.txt
$ git add b.txt
$ git rm --cached b.txt
間違って add したディレクトリを再帰的に取り消す
$ mkidr src
$ cd src
$ vi c.cpp
$ cd ../
$ git add src
$ git rm --cached -r src
svn revert 的な機能
a.txt を元に戻したい場合。
$ git checkout a.txt
リモートにプッシュ&プル
リモートサーバに push, リモートサーバから pull する。
$ git remote add origin name@remote-host:myproj
$ git push origin master
$ git pull origin master
push, pull の default を設定
push, pull する default 宛先を設定する。
今回は、branch master → origin へ。
$ git config --add branch.master.remote origin
$ git config --add branch.master.merge master
このままだと push するとき waring が出るので、 config に適切な値を設定する。
$ git config --global push.default matching
参考:git config push.default matching
ファイル移動&リネーム
ファイルやディレクトリの移動、リネームをする。
$ git mv a.txt b.txt
大文字から小文字へといったリネームの際、失敗することがある模様。
以下、実際にエラーが出た例。
$ git mv LaunchDaemons/ launchdaemons/
fatal: renaming LaunchDaemons failed: Invalid argument
いったん、別名にしてあげれば対処可能。
なんか腑に落ちなくはあるけども。
$ git mv LaunchDaemons/ launch_daemons/
$ git mv launch_daemons/ launchdaemons/