git diff `git merge-base master branch`..branch
База слияния - это точка, от которой branch
отходят master
.
Git diff поддерживает специальный синтаксис для этого:
git diff master...branch
Вы не должны менять стороны, потому что тогда вы получите другую ветку. Вы хотите знать, что изменилось branch
с тех пор, как оно изменилось master
, а не наоборот.
Слабо связанные:
Обратите внимание, что ..
и ...
синтаксис не имеет той же семантики, что и в других инструментах Git. Это отличается от значения, указанного в 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>
») не означают диапазон, определенный в разделе «УКАЗАНИЕ ДИАПАЗОНОВ» в gitrevisions[7]
.
git diff master..branch
. Вы можете сократить его,git diff master..
если вы находитесь на ветке.r1..r2
Синтаксис является аббревиатурой ,^r1 r2
что означает «показать мне все , что происходит отr2
и не достижима изr1
».git help gitrevisions
содержит информацию о различных синтаксисах, которые вы можете использовать.