Magit은 최근 이와 같은 것을 지원했지만 기능은 여전히 가장자리에서 약간 거칠고 명시 적으로 활성화해야합니다.
비슷한 기능이 오랫동안 존재했습니다. 로그 버퍼에서 한 커밋에서 다른 커밋으로 이동하고 동일한 프레임의 다른 창이 리포지토리의 개정 버퍼 인 경우 해당 커밋이 커밋되지 않고 커밋을 표시하기 위해 해당 버퍼가 새로 고쳐집니다 이전에 보여주고있었습니다.
최근까지 한 커밋에서 다른 커밋으로 처음 이동할 때 개정 버퍼가 만들어졌습니다. 나는 그 행동을 바꾸었고 이제는 개정 버퍼가 이제까지 만 업데이트되었습니다 . 동일한 프레임에 창이 해당 버퍼를 표시하지 않으면 로그를 이동해도 더 이상 일부 새 창이 표시되거나 기존에 다른 버퍼가 표시된 기존 창이 표시되지 않습니다.
이제 SPC수정 버퍼를 표시하려면 한 번 눌러야 합니다. 그런 다음에 만 로그 버퍼를 이동할 때 업데이트되기 시작합니다.
리비전 버퍼를 업데이트하지 않으려면 다음을 수행하십시오.
(remove-hook 'magit-section-movement-hook
'magit-log-maybe-update-revision-buffer)
반면에 상태 버퍼에서 이동할 때 개정 버퍼를 업데이트하려면 다음을 사용하십시오.
(add-hook 'magit-section-movement-hook
'magit-status-maybe-update-revision-buffer)
이제 Blob 버퍼가 유사한 방식으로 자동 업데이트 될 수 있습니다. 먼저 이것을 추가하십시오 :
(add-hook 'magit-section-movement-hook
'magit-log-maybe-update-blob-buffer)
그리고 아마도 :
(add-hook 'magit-section-movement-hook
'magit-status-maybe-update-blob-buffer)
그런 다음, 로그 (또는 상태) 버퍼 내에서을 눌러 RET리비전 버퍼를 표시하거나 업데이트하고 해당 버퍼로 전환합니다. 관심있는 파일로 이동 한 후 RET다시 누르십시오 . 이제 "blob-visiting"버퍼에 있습니다.이 버퍼는 작업 트리의 파일을 방문하지 않고 커밋중인 파일을 방문한다는 점을 제외하고 파일 방문 버퍼와 유사합니다.
로그 (또는 상태) 버퍼로 다시 전환하고 다른 커밋으로 이동하십시오. Blob 버퍼가 업데이트되고 있습니다.
다른 Blob을 표시해도 실제로 기존 Blob 버퍼를 재사용하지는 않습니다. 대신 새 Blob을 방문한 새 버퍼를 만든 다음 이전에 다른 Blob 버퍼를 표시 한 창에 해당 버퍼를 표시합니다. 다른 버퍼는 삭제되지 않습니다. 불행히도 꽤 많은 버퍼가 단기간에 누적 될 수 있습니다. 앞서 언급 한 거친 가장자리 중 하나가 될 것입니다. qBlob 버퍼를 누르면 삭제되므로 여러 Blob 버퍼를 표시하는 데 사용 된 창으로 이동하여 q모든 버퍼가 삭제 될 때까지 계속 눌러 정리할 수 있습니다 .
또한 pand를 사용하여 Blob 버퍼 내에서 다음 또는 이전 Blob으로 이동할 수 n있습니다. 대부분의 경우 최근 Blob으로 시작한 다음을 사용하여 이전 Blob으로 이동한다고 가정합니다 p. 그렇게하고 다른 방향으로 이동 q하려면 현재 버퍼를 종료하여 이전 버퍼, 즉 다음 얼룩으로 이동하는 것이 좋습니다 .
또한 BLOB을 방문하기 위해 개정판을 먼저 방문 할 필요는 없습니다. M-x magit-find-file RET <revision> RET <file> RET
직접 사용할 수도 있지만 덜 편리합니다.