Локальные изменения в IntelliJ, но для всей функциональной ветви - PullRequest
0 голосов
/ 04 июля 2018

IntelliJ предоставляет базовый вид локальных изменений в панели контроля версий. Очень удобно видеть все места, где код был изменен. Проблема появляется, когда у меня есть ветвь функции, и я нажимаю на нее обычную фиксацию, мои локальные изменения теряются.

Есть ли способ обосновать представление изменений не на том факте, что изменения являются локальными, а на некоторой разновидности различий между мастером и моей веткой объектов + локальные изменения?

Ответы [ 2 ]

0 голосов
/ 04 июля 2018

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

Как правило, вы хотите сравнить изменения содержимого файла в 2 сценариях:

Просмотрите локальные изменения перед совершением Это то, что вы делали. Вы можете продолжить делать это из вида Version Control -> Local Changes.

Просмотр различий между филиалами или коммитами Из Project просмотра или Editor щелкните правой кнопкой мыши -> Git -> Сравнить с веткой -> выберите ветка для сравнения.

Это должно показать вам все файлы, которые были изменены. Если вы хотите увидеть разницу содержимого, которое было изменено, дважды щелкните файл в дереве (ярлык: CTRL + D). Затем вы можете перемещаться по изменениям, а также в некоторых случаях редактировать файлы.

Это может работать из Project Root, подкаталога, файла, журнала git и т. Д., Так что поиграйте.

Надеюсь, это поможет решить вашу проблему. Остальное пожалуйста

Определения

  1. Локальные изменения : Это те изменения, над которыми вы сейчас работаете, но не зафиксировали. Итак, если вы выполните git reset --hard или измените свою машину / проект, они будут потеряны. В Intellij Version Control >> Local View вы можете увидеть все файлы, которые вы изменили.
  2. Подтвержденные изменения : Когда вы довольны своими локальными изменениями, вы можете связать изменения вместе и зафиксировать их в ветке. Таким образом, ваши локальные изменения не «потеряны», они просто «повышены» до фиксации.
  3. Ветви : Чтобы упростить ветки в git, это просто группы коммитов, которые следуют друг за другом (древовидная структура), обычно вы бы ограничили main ветки (скажем, master или dev) и многие функция филиалов. Функциональные ветви в основном должны быть объединены с вашей основной веткой.
0 голосов
/ 04 июля 2018

Чтобы просмотреть внесенные вами изменения (как измененные файлы отображаются в окне Local Changes), вам просто нужно выбрать самый последний коммит в Окно журнала , после чего в нем будут перечислены измененные файлы справа (то же самое). как то, что вы видели в окне локальных изменений).

enter image description here


Чтобы сравнить diff между двумя ветвями , вы можете выполнить следующие шаги (например, сравнить feature ветвь с master ветвью):

В feature ответвление -> VCS -> Git -> Сравнить с ответвлением -> выбрать master ответвление.

enter image description here

Затем в нем будут перечислены различия между feature ответвлением и master ответвлением. И вы можете дважды щелкнуть для изменения различий, чтобы просмотреть изменения деталей.

Но это просто список, без пометок в редакторе.

Поскольку вы уже зафиксировали изменения, список файлов не будет отображаться в окне локальных изменений. Если вы хотите перечислить файлы diff как локальные изменения в ветке feature, вы можете обратиться к опции ниже.

Чтобы отобразить diff из ветви master в качестве изменений для feature branch , вы можете оформить master ревизию в feature branch. Подробности, как показано ниже:

В окне терминала:

git checkout feature             #Switch to feature branch
git checkout master -- .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...