IntelliJ: Перегляд різниць усіх змінених файлів між локальними та git-комітками / гілками


103

Використання розглядача розробок IntelliJ - це дуже приємний спосіб перегляду коду, оскільки ви можете внести зміни у свою локальну версію, використовуючи всі можливості редактора коду IntelliJ (рефакторинг, завершення тощо).

На жаль, я не розробив, як зробити найважливіше, коли ви робите огляди коду в IntelliJ, а саме: Переглядаючи різницю всіх змінених файлів у робочому дереві (відвідайте гілку, з якої потрібно об'єднатись) та інша гілка (гілка, яку ви плануєте об'єднати, наприклад, "master").

Хтось знає, як це зробити?


Будь ласка, дивіться розділ Порівняння в одному з їх публікацій у блозі .
— Вік

Це запитання показує кроки меню для відображення різниці для всіх файлів проти іншої гілки (тобто головного): stackoverflow.com/questions/40637055/…
— Алан Томпсон,

Відповіді:


59

Хоча відповідь Джона Тірсена правильна, вам потрібно пройти весь текст, щоб зрозуміти, як це зробити.

Ось зображення того ж у mac.

  1. Зараз я працюю з hello_world і хочу порівнювати з майстром. введіть тут опис зображення

  2. Далі з’явиться вікно. Виберіть Filesта натиснітьcmd + d

введіть тут опис зображення

  1. Ще одне вікно, яке показує розл. Ви можете виконувати різні типи різниць. Використовуйте cmd + shift + ]та cmd + shift + [перемикайте між файлами.

введіть тут опис зображення

Порада в відмінностях: IntelliJ надає розширені функції відмінності. Ви можете перевірити їх на 3-му зображенні.


1
Як я можу це зробити для всього проекту замість файлу за файлом?
— JoeMjr2

@ JoeMjr2 Я дійсно не впевнений, чи є ці можливості сьогодні. Ви можете переміщатися по всіх файлах за допомогою cmd + shift + [та cmd + shift + ](замінити cmd ctrl, якщо ви використовуєте windows).
— невідомий

Це було змінено під час оновлення версії до 2020 року, див. Мою відповідь нижче щодо оновленого методу.
— BlueYoshi

Чи можете ви порівняти також дві версії, встановивши ідентифікатори комісій?
— Дан Мадак

85

Це зараз реалізовано. Для того, щоб порівняти дві галузі, ви робите:

  1. Ознайомтесь із однією з галузей, з якою ви хочете порівняти.
  2. Виберіть гілку, з якою ви хочете порівняти, у спливаючому вікні гілки Git у рядку стану в нижньому правому куті вікна IntelliJ. Показано спливаюче вікно з деякими параметрами.
  3. Виберіть параметр "Порівняти".
  4. Це за замовчуванням показує всі зобов’язання, ви також можете вибрати вкладку "Diff", щоб показати фактичні зміни.

Це все описано набагато детальніше в одному з їх публікацій у блозі .


4
Чи можливо це також за допомогою довільних комітетів замість гілок? Я маю на увазі, що я можу швидко створити для цього локальну гілку, але це здається трохи громіздким.
— Робін

@ Hikaru755 Ви коли-небудь це з'ясовували? Я намагаюся зробити те саме
— ycomp

@ycomp Ні, на жаль, ні. Я до цього можу створити тимчасові відділення для цього.
— Робін

1
@ Hikaru755 так, я створив tmpфілію, я думаю, це досить добре. Схоже,
— наднормативність

3
@Robin так можна. Відкрийте історію файлу, виберіть два коміти та натисніть Ctrl-D. Він також працює між різними гілками.
— Віктор Сергієнко

9

Це реалізовано зараз. Клацніть правою кнопкою миші на проект і виберіть "Git - порівняйте з гілкою ..." і виберіть masterгілку. Зроблено. Відмінність усіх файлів.


Це хороший підхід. Якщо ви бачите опцію сірим, це тому, що ви не правильно натискаєте папку проекту java / main / src.
— jmojico

8

Це було змінено під час оновлення версії до 2020 року:

Тепер вам потрібно зробити наступне:

  1. Ознайомтесь із однією з галузей, яку ви хочете порівняти.

  2. Відкрийте меню Відділення .

  3. Виберіть іншу гілку, з якою ви хочете порівняти.

  4. Виберіть "Показати різницю з робочим деревом" .

введіть тут опис зображення


Дякую, я зрозумів, що це змінилося, але не міг зрозуміти, куди це ділося.
— fmquaglia

1
Це найсвіжіша відповідь на даний момент. Інші відповіді стосуються старих версій IntelliJ, але не поточної.
— Павло

1

Якщо ви просто хочете порівнювати наявний відкритий файл із іншою гілкою, просто перейдіть до VCS -> Git -> Порівняти з відділенням.


6
Це відповідає на питання, але не це! :)
— Ламбарт

1

Клацніть правою кнопкою миші на класі та виберіть опцію Git, де ви побачите параметр порівняння з гілкою, де ви можете вибрати конкретну гілку.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.