Как делают я постоянно удаляю (стирают) файлы из истории?

Я фиксировал (не продвинутый) много файлов локально (включая удаление двоичных файлов и добавление...) и теперь когда я пытаюсь продвинуть его, занимает много времени. На самом деле я испортил свою локальную repo историю.

Как я мог избежать этой ошибки в будущем? Я могу преобразовать ряд локального пересмотра 1-> 2-> 3-> 4 к 1-> 2 с 2 являющийся заключительным пересмотром локального клона?

править: так как я спешил, я запустил новый удаленный repo с нуля с пересмотра 4. В будущем я пойду с отмеченным ответом, поскольку это кажется легче, но я вырою другие решения видеть истину. Спасибо за Вашу поддержку.

5
задан Keith Thompson 14 May 2013 в 23:41
поделиться

2 ответа

Mercurial история неизменна, вы не можете удалить с помощью обычных инструментов. Однако вы можете создать новое репо без этих файлов:

$ hg clone -r 1 repo-with-too-much new-repo

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

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

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

1
ответ дан 15 December 2019 в 06:20
поделиться

Из вашего вопроса не ясно, были ли внесены эти изменения. Если они все еще местные, от них более или менее легко избавиться. преобразовать - это один из вариантов. Вы также можете использовать MQ (непрерывные очереди). См. Подробное объяснение в вики-статье EditingHistory . Он рекомендует использовать MQ как самый простой подход.

Чтобы предотвратить подобные ошибки, вам, вероятно, следует добавить ловушку для отклонения «плохих» коммитов, учитывая, что вы можете описать их программно;)

2
ответ дан 15 December 2019 в 06:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: