git:分散型バージョン管理システム
コメントアウトだらけのソースコードやソースファイル名のスーパーサイヤ人化(※)を防ぐ. 導入 (環境:Ubuntu 12.10) # apt-get install git
まずやる設定
% git config --global user.name "名前" % git config --global user.email メールアドレス エディタを指定 % git config --global core.editor emacs プロキシの設定
% git config --global http.proxy "プロキシ設定" 設定の確認 % git config --list % cat ~/.gitconfig
[user]
name = Shohei Okada
email = okada@jnlp.org 管理したいディレクトリに移動し % git init 主に使うコマンド(ローカル編) % git add <file> # 対象ファイルを追跡対象に追加・ステージングエリアに 追加 % git commit -m "<comment>" # ステージングエリアのファイルをリポジトリにコミット % git status # ファイルの状態の確認 % git rm <file> # ファイル を追跡対象 からはずす・ステージングエリアから削除(ファイルも実際に削除される) ファイル を追跡対象 からはずす・ステージングエリアから削除(ファイルは実際に削除されない) % git mv <file_from> <file_to> # ファイルの移動・名前の変更 % git log # コミットログの閲覧 % git diff # 差分の表示(作業ディレクトリとステージングエリア) % git diff --staged # 差分の表示(ステージジングエリアと直近のコミット) 主に使うコマンド(リモート編) % git clone <url> # URLのリポジトリをローカル環境にクローン % git remote # 今までに設定したリモートハンドル一覧を表示 % git remote -v # 名前に対応するURLも表示 % git remote add <shortname> <url> # リモートリポジトリの追加.以後,URLの代わりに<shortname>で指定可能 % git fetch <remote-name> # リモートリポジトリからデータを取得 % git merge # 作業ディレクトリにマージ % git pull <remote-name> # fetch + merge % git push <remote-name> <branch-name> # リモートへのプッシュ % git remote show <remote-name> # リモートの情報を表示 % git remote rename <remote-name> <new-name> # リモートのリネーム % git remote rm <remote-name> # リモートの削除 ブランチ関連 % git checkout -b <branch-name> # 新しくブランチを切って,そこに移動 % git checkout <branch-name> # ブランチの移動 % git branch # ブランチ一覧を表示(*がついているのが現在のブランチ) % git branch -a # リモートも含めたブランチ一覧 % git branch -d <branch-name> # ブランチの削除 % git push <remote-name> :<branch-name> # リモートのブランチの削除 その他 % emacs .gitignore
(※)例えば,こんな状態(極端な例)
% ls calculate.py calculate2_kai2.py calculate3_kai2.py calculate2.py calculate3.py calculate2_kai.py calculate3_kai.py
参考: Git - Book 「計算機関連」に戻る |