Работа с изменениями

Поглощение

Вы починили три замечания с ревью в трёх файлах. Честный вариант — три коммита fixup!, нацеленных на нужных родителей. То, что люди делают на самом деле, — один коммит под названием «правки по ревью».

Поглощение делает честный вариант за вас.

Поглощение направляет каждый проиндексированный ханк в коммит, который его ввёл

Как это работает

  1. Добавьте правки в индекс.
  2. Инструменты → Поглотить изменения из индекса… (или ⌘K).
  3. Gitcito делает blame по строкам, которых касается каждый проиндексированный ханк, находит, какой из ваших неотправленных коммитов их ввёл, и показывает план, прежде чем что-либо делать.

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

Кнопка Что происходит
Создать fixup-коммиты По одному fixup! на цель. Ребейза не происходит.
Создать fixup-коммиты и сделать ребейз То же самое, а затем ребейз с autosquash вкладывает их внутрь.

Правила, по которым он играет

  • Кандидаты — только неотправленные коммиты. То, что уже опубликовано, не наше, чтобы его переписывать. Если отправлено всё, поглощение так и скажет и ничего не сделает.
  • Рабочее дерево не трогается никогда. Только индекс и те коммиты, которые поглощение создаёт само.
  • Сбой не оставляет беспорядка. Если любой шаг падает, HEAD и индекс возвращаются ровно туда, где были.
  • Оно отказывается работать во время слияния или ребейза — этот индекс принадлежит git.

См. также: Интерактивный ребейз · Индексирование

Улучшить этот перевод на GitHub