diff 명령 보기 좋았다

3005 단어 VimUNIXdiff
어느 날 갑자기 「diff라고 보기 어렵다!」라고 생각했으므로 조사해 diff력 업 입문해 보았습니다. 초보적인 내용입니다.

표준 그대로





colordiff 넣기





이것만으로도 상당히 바뀌었습니다. 우선 colordiff 채용.
diff에 alias를 붙입니다.
if [[ -x `which colordiff` ]]; then
  alias diff='colordiff'
fi

-u 옵션을 붙인다



diff에 -u옵션을 붙이면 git으로 기억할 수 있는 느낌이 되었습니다. unified 형식이라고 합니다.
diff -u file1 file2



-y 옵션을 붙인다



diff에 -y 옵션을 붙이면 파일 내용을 좌우로 나란히 비교 표시해 주었습니다.
차이가 있는 부분은 |이나>등으로 표적 붙으면서, colordiff라면 색이 붙습니다.



덧붙여서 이 출력을 less에 건네주면 성대하게 문자화 했습니다. colordiff -y file1 file2 | less -R 라고 하면 좋을 것 같습니다.

.colordiffrc에서 색상 설정도 변경할 수 있습니다.
banner=no
color_patches=no

plain=off
newtext=green
oldtext=cyan
diffstuff=yellow
cvsstuff=white

-y --suppress-common-lines 붙이기


-y 옵션에 추가로 --suppress-common-lines 옵션을 붙이면 변경이 있는 행만을 표시해 줍니다.
마음껏 정확히 관계없는 행을 지워 줍니다만, 이번에는 정보가 너무 적은 느낌이・・・.
이것에 행 번호를 표시 할 수 없습니까?



--suppress-common-lines 옵션을 기억하는 것은 엄격하기 때문에alias diff='diff -y --suppress-common-lines' 와 alias 설정하면 옵션의 충돌로 diff -u 를 사용할 수 없게 되어 버렸기 때문에alias diffy='diff -y --suppress-common-lines' 와 alias 설정했습니다.

번외 vimdiff 사용



vim에 표준으로 vimdiff라는 것이 붙어있는 것을 몰랐습니다.
외형도 편리함도 좋은 느낌이라고 생각합니다.
% vimdiff file1 file2
# もしくは
% vim -d file1 file2





조작


dp
왼쪽 차이를 오른쪽으로 병합

do
오른쪽 차이를 왼쪽으로 병합

]-c
다음 차이로 점프

[-c
이전 차이로 점프

좋은 웹페이지 즐겨찾기