Как переписать историю ветки master в другую ветку master репозитория

Есть ли способ или какой-либо инструмент или команды, чтобы переписать историю master или несколько A переход от некоторого номера коммита к вновь созданному master филиал НОВОГО ХРАНИЛИЩА с master ветвь с 0 коммитами или без истории.

Таким образом, что:

  1. Все предыдущие коммиты перед номером коммита "45678" должны быть переписаны как одиночный коммит в новой основной ветке репозитория
  2. Переписывание истории должно начинаться с коммита "45678"

Спасибо

1 ответ

Решение

(У меня нет подходящего жертвенного хранилища, чтобы проверить это: вас предупредили).

я бы подумал merge --squash мог бы сделать это.

  • Добавить новый репозиторий как удаленный
  • Создайте ветку dest, отправьте ветку с отслеживанием вверх по течению в новый репозиторий
  • Оформить заказ на новую ветку
  • Merge --squash из вашей ветки источника
  • совершить
  • Нажмите на новый репозиторий

(Смотрите также этот ответ.)

Старый контент (до редактирования вопроса)

Просто создайте новый репозиторий как новый пульт на вашем клоне исходного репозитория; а затем нажмите на новый репозиторий.

git remote add newrep url-to-new-repository
git push -u newrep master

Повторите последнюю команду для каждой ветви, которую вы хотите нажать.

Другие вопросы по тегам