gitでのbranch開発
最近branchを分けて開発をする機会があったので備忘録
1.ローカルのブランチを作成する
ローカルブランチの確認
# git branch * master
ローカルブランチを作成する
# git branch l_hoge
※編集中のもの(コミットしてないものとか)はすべてブランチに反映されます
# git branch * master l_hoge
2.リモートブランチの作成
リモートブランチの確認
# git branch -r origin/HEAD -> origin/master origin/master
リモートブランチを作成する
# git push origin r_hoge
リモートブランチの再確認
# git branch -r origin/HEAD -> origin/master origin/master origin/r_hoge
3.ローカルブランチに切り替える
ローカルブランチの確認
# git branch * master l_hoge
ローカルブランチ作成
# git checkout l_hoge
ローカルブランチの再確認
# git branch master * l_hoge
4.ローカルブランチからリモートブランチにpushする
# git commit -a -m 'test commit'
リモートブランチにpush
# git push origin r_hoge
5.他の人がリモートブランチを使用する
リモートブランチ確認
# git branch -r origin/HEAD -> origin/master origin/master
originのリモートブランチの情報を反映
# git fetch origin
リモートブランチ再確認
# git branch -r origin/HEAD -> origin/master origin/master origin/r_hoge
l_hogeにリモートブランチをチェックアウト
# git checkout -b l_hoge origin/r_hoge
ローカルブランチ確認
# git branch * master l_hoge
6.ローカルブランチにリモートブランチからpullする
# git pull origin r_hoge
6.masterにマージする
# git pull origin r_hoge
コマンド
ローカルブランチの確認 git branch リモートブランチの確認 git branch -r ブランチの確認 git branch -a ローカルブランチを作成する git branch l_hoge リモートブランチの作成 git push origin r_hoge ブランチの切り替え git checkout l_hoge git checkout master リモートブランチにプッシュ git push origin r_hoge リモートブランチからプル git pull origin r_hoge リモートからチェックアウト git checkout -b l_hoge origin/r_hoge masterでマージ git pull origin r_hoge リモートでのマージ git pull origin master
PerlでCIを調べてみた
うちのプロジェクトでも継続的インテグレーション(ContinuousIntegration)を取り入れたいと思い調査。
Ukigumo
http://d.hatena.ne.jp/tokuhirom/20110913/1315871769
http://hirobanex.net/article/2011/10/1319278337
Jenkins
http://build-shokunin.org/
http://d.hatena.ne.jp/nekonokataomoi/20110509/1304946818
http://alpha.mixi.co.jp/blog/?p=2811
smolder
http://www.slideshare.net/mpeters/smolder-introduction
http://64p.org/memo/smolder.html
http://d.hatena.ne.jp/tokuhirom/20090410/1239320254
Test::Chimps
めんどくさいっぽいのでパス
何かお勧めあったら教えてください
以上
tmuxを使ってみる
いろいろなとこで記事になっているので書く必要はないが、とりあえずメモ。
screenで縦分割をしたくて探していたら、tmuxがはやっているとのことだったので試してみた。
tmux-1.5.0
インストールはlibeventのバージョンが低かったのでアップグレード。
今度はmemcachedが動かなくなったのでアップグレード。
※参考
http://d.hatena.ne.jp/jonki/20100805/1280980895
設定ファイル .tmux.conf
/usr/share/doc/tmux-1.2/examples/screen-keys.conf
ここにある程度用意してある。
いろんなブログからよさそうなものをコピーしてきた。
とりあえず貼る。
# prefixキーをctrl+tへ変更
set-option -g prefix C-t
unbind-key C-b
bind-key C-t send-prefix
# prefix + r で設定ファイルを再読み込み
bind r source-file ~/.tmux.conf
# prefixキー連打で直前のウィンドウと切り替え
unbind C-t
bind-key C-t last-window
# copyモードのキーバインドをvi風に
set-window-option -g mode-keys vi
# 日本語対応
set-window-option -g utf8 on
# ウィンドウ名固定
set-window-option -g automatic-rename off
# マウスで移動
set-option -g mouse-select-pane on
# 番号基準値
set-option -g base-index 1
set -g history-limit 100000#---------------------------------------
# 色設定
set -g status-bg colour7
set -g status-fg black
set -g status-attr dim
# 左部:whoami@hostname
set -g status-left '#[fg=green,bold][#20(whoami)@#H]#[default]'
# 右部:[日時]
set -g status-right '#[fg=green,bold][%Y/%m/%d(%a)%H:%M]#[default]'
set -g message-attr bold
set -g message-fg white
set -g message-bg redset -g pane-active-border-fg white
set -g pane-active-border-bg blackset-window-option -g mode-bg white
set-window-option -g mode-fg black
set-window-option -g window-status-bg black
set-window-option -g window-status-fg white
set-window-option -g window-status-current-fg white
set-window-option -g window-status-current-bg colour12
set-window-option -g window-status-current-attr bold#-------------------------------------
# 直前のウィンドウ
bind C-t last-window# 分割していたペインそれぞれをWindowに
bind b break-pane
# ペインの縦分割
bind s split-window -v
# ペインの横分割
bind v split-window -h# 分割画面への移動をviライクに割当
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R# ペイン番号表示
bind i display-panes# prefix + spaceでウィンドウの一覧表示
bind Space choose-window
いろいろいじって試す。
以上