때로는 어떤 줄이 변경되었는지 뿐만 아니라, 파일 내 특정 줄을 정확히 누가 변경했는지 알아야 할 때가 있습니다. 이때 → 명령(가끔 annotate 명령이라고도 불림)이 유용합니다.
이 명령은 파일의 모든 줄에 대해 해당 줄을 변경한 작성자와 리비전을 나열합니다.
이전 리비전의 변경 사항에 관심이 없다면, 블레임이 시작될 리비전을 설정할 수 있습니다. 모든 리비전에 대한 블레임을 원한다면 이를 1로 설정하십시오.
기본적으로 블레임 파일은 TortoiseBlame을 사용하여 표시되며, 이 도구는 가독성을 높이기 위해 다른 리비전을 강조 표시합니다. 블레임 파일을 인쇄하거나 편집하려면 텍스트 뷰어로 블레임 보기를 선택하십시오.
줄 끝 및 공백 변경 사항이 처리되는 방식을 지정할 수 있습니다. 이 옵션은 “줄 끝 및 공백 옵션” 섹션에 설명되어 있습니다. 기본 동작은 모든 공백 및 줄 끝 차이를 실제 변경 사항으로 취급하는 것이지만, 들여쓰기 변경을 무시하고 원래 작성자를 찾으려면 여기서 적절한 옵션을 선택할 수 있습니다.
원하는 경우 병합 정보를 포함할 수도 있지만, 이 옵션은 서버에서 정보를 가져오는 데 상당히 오랜 시간이 걸릴 수 있습니다. 다른 소스에서 줄이 병합될 때, 블레임 정보는 변경이 원본 소스에서 이루어진 리비전과 이 파일로 병합된 리비전을 모두 보여줍니다.
을 누르면 TortoiseSVN은 블레임 파일을 생성하기 위한 데이터 검색을 시작합니다. 블레임 프로세스가 완료되면 결과가 임시 파일에 기록되고 결과를 볼 수 있습니다.
TortoiseSVN에 포함된 TortoiseBlame은 블레임 파일을 더 쉽게 읽을 수 있도록 합니다. 블레임 정보 열에서 줄 위로 마우스를 가져가면, 동일한 리비전을 가진 모든 줄은 더 어두운 배경으로 표시됩니다. 동일한 작성자가 변경한 다른 리비전의 줄은 밝은 배경으로 표시됩니다. 디스플레이가 256색 모드로 설정되어 있으면 색상이 선명하게 작동하지 않을 수 있습니다.
줄을 왼쪽 클릭하면, 동일한 리비전을 가진 모든 줄이 강조 표시되고, 동일한 작성자가 변경한 다른 리비전의 줄은 더 밝은 색상으로 강조 표시됩니다. 이 강조 표시는 고정되어 있어 마우스를 이동해도 강조 표시가 사라지지 않습니다. 해당 리비전을 다시 클릭하면 강조 표시가 해제됩니다.
마우스를 블레임 정보 열 위로 가져갈 때마다 리비전 주석(로그 메시지)이 힌트 상자에 표시됩니다. 해당 리비전의 로그 메시지를 복사하려면, 블레임 정보 열에서 오른쪽 클릭할 때 나타나는 상황 메뉴를 사용하십시오.
→ 를 사용하여 블레임 보고서 내에서 검색할 수 있습니다. 이를 통해 리비전 번호, 작성자 및 파일 내용 자체를 검색할 수 있습니다. 로그 메시지는 검색에 포함되지 않습니다 - 로그 대화 상자를 사용하여 검색해야 합니다.
→ 을 사용하여 특정 줄 번호로 이동할 수도 있습니다.
마우스가 블레임 정보 열 위에 있을 때, 마우스 아래 줄의 리비전 번호를 참조하여 리비전을 비교하고 히스토리를 검토하는 데 도움이 되는 상황 메뉴를 사용할 수 있습니다. → 은 동일한 파일에 대한 블레임 보고서를 생성하지만, 이전 리비전을 상한으로 사용합니다. 이는 현재 보고 있는 줄이 마지막으로 변경되기 직전의 파일 상태에 대한 블레임 보고서를 제공합니다. → 는 참조된 리비전에서 무엇이 변경되었는지 보여주며, 차이점 뷰어를 시작합니다. → 는 참조된 리비전부터 시작하는 리비전 로그 대화 상자를 표시합니다.
가장 오래된 변경 사항과 최신 변경 사항이 어디에 있는지 더 나은 시각적 표시가 필요하면 → 를 선택하십시오. 이는 색상 그라데이션을 사용하여 최신 줄은 빨간색으로, 오래된 줄은 파란색으로 표시합니다. 기본 색상은 상당히 밝지만, TortoiseBlame 설정에서 변경할 수 있습니다.
병합 추적을 사용 중이고 블레임을 시작할 때 병합 정보를 요청했다면, 병합된 줄은 약간 다르게 표시됩니다. 다른 경로에서 병합된 결과로 줄이 변경된 경우, TortoiseBlame은 병합이 발생한 리비전 대신 원본 파일에서 마지막 변경이 이루어진 리비전과 작성자를 보여줍니다. 이러한 줄은 리비전과 작성자가 이탤릭체로 표시되어 구분됩니다. 병합이 발생한 리비전은 블레임 정보 열 위로 마우스를 가져갈 때 툴팁에 별도로 표시됩니다. 병합된 줄이 이런 방식으로 표시되는 것을 원하지 않으면, 블레임을 시작할 때 병합 정보 포함 확인란을 선택 해제하십시오.
병합에 관련된 경로를 보려면 → 를 선택하십시오. 이는 병합으로 인한 변경을 제외하고 해당 줄이 마지막으로 변경된 경로를 보여줍니다.
블레임 정보에 표시된 리비전은 해당 줄의 내용이 마지막으로 변경된 리비전을 나타냅니다. 파일이 다른 파일을 복사하여 생성된 경우, 줄을 변경하기 전까지는 블레임 리비전이 복사가 이루어진 리비전이 아니라 원본 소스 파일의 마지막 변경을 보여줍니다. 이는 병합 정보와 함께 표시되는 경로에도 적용됩니다. 경로는 해당 줄에 대한 마지막 변경이 이루어진 저장소 위치를 보여줍니다.
TortoiseBlame 설정은 TortoiseBlame 탭에서 → 을 사용하여 액세스할 수 있습니다. “TortoiseBlame 설정” 섹션을 참조하십시오.
블레임 보고서의 한계 중 하나는 특정 리비전에서의 파일 상태와 각 줄을 마지막으로 변경한 사람만 보여준다는 것입니다. 때로는 누가 변경했는지 뿐만 아니라, 어떤 변경이 이루어졌는지도 알고 싶을 때가 있습니다. TortoiseBlame에서 줄을 오른쪽 클릭하면 해당 리비전에서 이루어진 변경 사항을 보여주는 상황 메뉴 항목이 있습니다. 하지만 변경 사항 과 블레임 정보를 동시에 보고 싶다면, 차이점 보고서와 블레임 보고서의 조합이 필요합니다.
리비전 로그 대화 상자에는 이를 수행할 수 있는 여러 옵션이 포함되어 있습니다.
상단 창에서 2개의 리비전을 선택한 다음 → 을 선택합니다. 이는 2개 리비전에 대한 블레임 데이터를 가져온 다음, 차이점 뷰어를 사용하여 두 블레임 파일을 비교합니다.
상단 창에서 하나의 리비전을 선택한 다음 하단 창에서 하나의 파일을 선택하고 → 을 선택합니다. 이는 선택된 리비전과 이전 리비전에 대한 블레임 데이터를 가져온 다음, 차이점 뷰어를 사용하여 두 블레임 파일을 비교합니다.
단일 파일의 로그를 표시하고, 상단 창에서 단일 리비전을 선택한 다음 → 을 선택합니다. 이는 선택된 리비전에 대한 블레임 데이터와 작업 BASE에 있는 파일에 대한 블레임 데이터를 가져온 다음, 차이점 뷰어를 사용하여 두 블레임 파일을 비교합니다.