Очистить главную ветку git и переместить часть фиксации в новую ветку?

У меня есть клон репозитория на Github, в котором я создал новую функцию для апстрима. Проблема в том, что я сделал это в своей основной ветке, которая также содержит другие вещи, которые я извлек из других клонов. Это полностью лишило меня возможности создавать разумные запросы на вытягивание.

Итак, я хочу сделать следующее:

  1. Восстановить мою главную ветку, чтобы она была точно такой же, как и исходная главная.
  2. Создать новую ветку.
  3. Перенесите некоторые из моих старых коммитов в новую ветку.
  4. Создайте запрос на перенос из ветки.

И в будущем я буду выполнять всю свою работу в ветвях и создавать запросы на перенос из них, оставляя свою главную ветку в одиночку и просто объединяя все, что приходит из восходящего потока.

Мои вопросы:

  1. Это разумный подход?
  2. Как мне на самом деле выполнить шаги 1 и 3?
39
задан the Tin Man 10 January 2014 в 00:10
поделиться