Как получить противоположное направление `git diff origin / master` - PullRequest
0 голосов
/ 13 декабря 2018

Если я запускаю git diff origin/master, он показывает мне изменения в моей локальной копии файлов в репо по отношению к файлам в главной ветке в удаленном репозитории.

Я знаю, что вы можете перечислить другой параметри поменяйте местами параметры, чтобы получить противоположное значение:

git diff origin/branch_a origin/branch_b становится: git diff origin/branch_b origin/branch_a

... но в моем случае я хочу сравнить с локальным (возможно, незафиксированным)изменения.

Есть ли способ сделать противоположное git diff origin/master?Таким образом, в основном, результат будет таким же, но вместо того, где говорится, что строки были удалены, будет сказано, что они были добавлены, и наоборот.

Я знаю, что мог бы написать скрипт для разбора текста иотменить это, но я подумал, что должен быть способ сделать это, и я просто не знаю, что это такое / не могу найти страницу руководства о том, как это сделать.

Ответы [ 2 ]

0 голосов
/ 13 декабря 2018

Справа: git diff <em>commit-specifier</em> сравнивает дерево данного коммита с рабочим деревом, с деревом коммита с левой стороны как a/ и рабочим деревом с правой стороны b/.Как вы заметили, трудно изменить их, так как рабочее дерево подразумевается из-за отсутствия второго дерева или спецификатора коммита.

К счастью, git diff имеет опцию -R, чтобы перевернуть две стороны,так что git diff -R <em>commit-specifier</em> делает свое дело.

0 голосов
/ 13 декабря 2018

Одним из вариантов, возможно, не самым изящным, было бы просто изменить положение двух ветвей, участвующих в diff.Итак, вы можете попробовать:

git checkout origin/master
git diff master

Это предполагает, что ваша текущая локальная ветвь равна master.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...