파일을 비교하고 소스 코드 저장소를 업데이트 할 때 vimdiff를 사용하고 싶습니다. 한 파일에서 다른 파일로 변경 사항을 복사하려면 일반적으로 다음과 같은 키 시퀀스를 사용합니다.
Shift + V (select line)
k or j; { or }; Up or down arrow keys (select more lines)
y (copy selected lines)
Ctrl + w, left/right arrow (move to other pane)
p (paste lines)
바로 가기 키의 마스터 인 Vim은 반드시 동일한 작업을보다 쉽게 수행 할 수 있어야합니다. 하나 있습니까? 소스 코드 변경 사항을 수동으로 업데이트하는 데 사용하는 것은 무엇입니까?
답변
do
(diff get)과 dp
(diff put)이 필요합니다. 다음은이 문맥에서 유용한 다른 일반 모드 명령 목록입니다.
]c - advance to the next block with differences
[c - reverse search for the previous block with differences
do (diff obtain) - bring changes from the other file to the current file
dp (diff put) - send changes from the current file to the other file
zo - unfold/unhide text
zc - refold/rehide text
zr - unfold both files completely
zm - fold both files completely
참고 :
모두를 do
하고 dp
당신이 블록 또는 일반 모드에서 블록에서 한 라인에 있지만없는 시각적 모드에서 경우에 작동합니다. 비주얼 모드에서 텍스트 줄을 선택할 때 일반 명령을 사용해야합니다
:'<,'>diffget
과:'<,'>diffput
.
도 참조하십시오 :h copy-diffs
.
:diffupdate
변경 사항을 파일에서 다시 스캔합니다.