パッチの練習
今日も浅く広くLinux。浅広のコーナー。コンソール版のVimの動作がおかしかったので、GUI版と別けていこうかと作業中です。
そんな時、困っちゃうのが、アレ?前の設定どうだったっけなぁ・・・。なんて事があるわけで、差分を取っておきたいのです。そんなわけで、今日はdiffとpatchの練習です。
作業風景。
$ cat .vimrc > .vimrc.org # オリジナルを保存
$ vim .vimrc # vimで編集〜
$ diff -u .vimrc.org .vimrc # 差分を取ってみる
--- .vimrc.org 2007-03-06 23:39:04.000000000 +0900
+++ .vimrc 2007-03-06 23:42:41.000000000 +0900
@@ -43,9 +43,9 @@
colorscheme desert
" set list
-set list
if has("gui")
set listchars=tab:>-,eol:<
+ set list
endif
highlight SpecialKey guifg=grey50
$ diff -u .vimrc.org .vimrc > .vimrc.patch # 保存
$ mv .vimrc.org ~/tmp/.vimrc # tmpへリネームして移動
$ mv .vimrc.patch ~/tmp/
$ cd ~/tmp/
$ patch < .vimrc.patch # パッチを当てる
patching file .vimrc
$ cat .vimrc | head -51 | tail -6 # 確認
if has("gui")
set listchars=tab:>-,eol:<
set list
endif
highlight SpecialKey guifg=grey50見事にパッチが当りました!!
headとtailを組み合わせれば、n行目〜m行目まで表示も可能ですが、計算がちとメンドイ。
head m | tail m - n
そのうちバージョン管理したいなぁ・・・。