Подтвердить что ты не робот

Как я могу сделать эквивалент git rebase -i HEAD ~ 2 в eGit?

Я знаю, как переустанавливать на конкретную ветку или тег, используя eGit в Eclipse, но я не нашел способ переустановки на определенный sha1 с помощью eGit. Я хотел бы сделать это, чтобы выполнить сквош-коммиты, прежде чем нажимать вверх по потоку (т.е. Делать git rebase -i HEAD~n, где n - некоторое количество коммитов назад, где я хочу переустановить). Возможно ли это с помощью eGit? Если нет, есть ли еще один плагин Eclipse, который я должен использовать, чтобы обеспечить эту функциональность?

4b9b3361

Ответ 1

EGit имеет rebase, но у него еще нет интерактивной пересылки, о которой вы просите.

Ответ 2

Я успешно выполнил компромисс, используя шаги из этот пост (вырезаем и вставляем здесь):

Если я хочу сквош, последний m фиксируется на текущей ветке, тогда I

  • выберите в истории первый коммит, который я не хочу раздавить
  • щелкните правой кнопкой мыши и скажите "Team → Reset → Soft"
  • щелкните правой кнопкой мыши и произнесите "Commit". Эта фиксация будет содержать все изменения последнего m, комментируемые вместе.

Ответ 3

В окне истории выберите фиксацию, к которой вы хотите переустановить, и создайте ветвь с именем rebase-point или что-то еще. Voila, теперь вы можете переустановить эту ветку и удалить ее позже, если хотите. Обычно я предпочитаю использовать именованную ветку для таких вещей, так как это минимизирует вероятность ошибок с моей стороны. В качестве альтернативы, считайте, что origin/master часто является правильной точкой перебазирования, если вы раздавите коммиты для нажатия.

Ответ 4

Вы также можете переустановить из представления Eclipse History.

  • Выберите репозиторий из представления Git Репозитории
  • Щелкните правой кнопкой мыши и выберите "Показать в истории"
  • Выберите фиксацию, которую вы хотите переустановить ветку, отмеченную в настоящий момент, поверх
  • Щелкните правой кнопкой мыши и выберите "Rebase on Top of item"
  • Примечание. Возможно, вам нужно будет выбрать "Показать все ветки и теги" на панели инструментов "История", чтобы отобразить фиксацию, которую вы ищете в таблице.