2016-09-27 2 views
2

병합 할 때 종종 "삭제됨"인 코드가 수정되었습니다. 그러나 다른 곳으로 옮겨 졌을 수도 있습니다. 어디에서 찾을 수 있습니까?삭제 된 큰 덩어리가 현재 살고있는 경우와 자식이 어디에 있는지 묻는 방법?

예 : 파일 A에 정의 된 foo 함수에서 한 행을 변경합니다. 다음으로이 함수가 이제 B 파일로 이동되었다는 트리에 병합됩니다 (한 줄 변경 가능). A에서 충돌 표시자는 "이 덩어리가 삭제되었습니다"라고 말합니다.

+1

예제를 보여줄 수 있습니까? – Schwern

답변

1

지사를 가정 mybranch이며, 주요 나무 당신은 git diff mybranch...master을 할 수있는, master입니다. 그러면 가장 가까운 공통 조상 커밋을 참조 지점으로 사용하여 두 분기 간의 모든 변경 내용이 표시됩니다.

diff에서는 파일을 검색하여 파일에 어떤 변화가 있었는지 확인할 수 있습니다.

자세한 내용은 git help diff을 참조하십시오.

+0

오히려 원유이지만, 나는 그것이 일을 인정해야합니다. – sevo

+0

@sevo - heh, 일반적으로 git에 대한 설명이 좋습니다. – Yawar

0

차이점을 더 잘 시각화 할 수있는 여러 가지 시각적 diff 및 병합 도구가 있습니다. 이것들은 일반적으로 삭제 된 것이 아니라 코드가 옮겨 졌을 때 나타낼 수 있습니다.

git difftool과 함께 사용하면 사용할 도구로 구성해야합니다. There's a wide variety available. 다음은 Meld를 ​​사용한 예입니다.

enter image description here

+0

OP는 인트라 파일보다는 인터 파일 이동을 찾고 있다고 생각합니다. – msandiford