Как удалить определенные коммиты из удаленного репо - PullRequest
0 голосов
/ 08 декабря 2018

У меня есть удаленное репо с 7 коммитами (назовем их A - G, где G - самый последний коммит).Коммиты C и E на самом деле не гарантируют новый коммит, и я хотел бы удалить их из истории удаленного коммита, сохраняя коммит G как HEAD.Как я могу это сделать?

1 Ответ

0 голосов
/ 08 декабря 2018

В документации git об этом говорится следующее:


Диапазон коммитов также может быть удален с помощью rebase.Если у нас следующая ситуация:

E---F---G---H---I---J  topicA

, то команда

git rebase --onto topicA~5 topicA~3 topicA

приведет к удалению коммитов F и G:

E---H'---I'---J'  topicA

Этополезно, если F и G были ошибочны или не должны быть частью темы A.Обратите внимание, что аргумент --onto и параметр могут быть любым допустимым коммитом.


НО в первую очередь это относится только к локальному репо.Поэтому, когда вы отправляете эту модифицированную историю коммитов на ваш пульт , вам нужно иметь достаточные привилегии для этого.Смотрите force push для более подробной информации.По собственному опыту могу сказать, что это может быть проблемой в MS TFS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...