git diff `git merge-base master branch`..branch
병합 기준 은에서 branch
분기 된 지점 입니다 master
.
Git diff는이를위한 특별한 문법을 지원합니다 :
git diff master...branch
당신은 다른 지점을 얻을 것이기 때문에 측면을 교환해서는 안됩니다. 반대 방향이 아닌 branch
에서로 변경되어 변경된 내용을 알고 싶습니다 master
.
느슨하게 관련됨 :
참고 ..
및 ...
기타 망할 놈의 도구와 같은 의미가없는 구문. 에 지정된 의미와 다릅니다 man gitrevisions
.
인용 man git-diff
:
git diff [--options] <commit> <commit> [--] [<path>…]
이것은 임의의 두 가지 사이의 변화를보기위한 것 <commit>
입니다.
git diff [--options] <commit>..<commit> [--] [<path>…]
이것은 이전 양식과 동의어입니다. 경우 <commit>
한쪽을 생략하고, 그것을 사용하는 것과 동일한 효과를 가질 것이다 HEAD
대신한다.
git diff [--options] <commit>...<commit> [--] [<path>…]
이 양식은 <commit>
두 가지 공통 조상에서 시작 하여 두 번째까지 포함 된 분기의 변경 사항을 확인하기위한 것 <commit>
입니다. " git diff A...B
"는 " "와 같습니다 git diff $(git-merge-base A B) B
. 중 하나를 생략하면 대신 <commit>
사용하는 것과 같은 효과가 HEAD
있습니다.
만약 당신이 이국적인 것을하고 있다면 <commit>
, ".."표기법을 사용하는 마지막 두 형식을 제외하고는 위의 설명에서 모든 것이 될 수 있다는 점에 유의해야 합니다 <tree>
.
철자법에 대한 자세한 전체 목록 <commit>
은의 "사양 수정"섹션을 참조하십시오 gitrevisions[7]
. 그러나 "diff"는 범위가 아닌 두 끝점을 비교하는 것이며 범위 표기법 ( " <commit>..<commit>
"및 " <commit>...<commit>
")은의 "SPECIFYING RANGES"섹션에 정의 된 범위를 의미하지 않습니다 gitrevisions[7]
.
git diff master..branch
.git diff master..
지점에 있으면 단축 할 수 있습니다 .r1..r2
구문은 짧은^r1 r2
수단 "에서 하강하는 것이 나에게 모든 것을 보여 어떤r2
과가에서 접근 할 수 없습니다r1
."git help gitrevisions
사용할 수있는 다양한 구문에 대한 정보가 있습니다.