2013-08-09 3 views
7

Простой вопрос: есть ли способ вернуться - все из верстака TortoiseHg? Я вижу, как вернуть отдельный файл. В идеале я мог бы щелкнуть по ревизии, а в правом меню мыши найти элемент «вернуть все».Revert - all in TortoiseHg Workbench

Я использую TortoiseHg 2.8 на поле Ubuntu.

EDIT Я должен был предоставить более подробную информацию по моему вопросу, чтобы предоставить некоторый контекст. Позвольте мне описать конкретный прецедент:

Я хочу вернуть свой рабочий каталог в состояние прошлой фиксации, чтобы я мог генерировать вывод из исполняемого файла, который, как я знаю, «хорош». Как только я сгенерировал этот вывод, я хочу вернуться к подсказке и продолжить свое развитие, сохраняя эту историю линейной. Из командной строки я сделал «hg revert -all -rev 22», сгенерировал вывод, затем «hg revert -all», который сделал то, что я хотел. «hg update» создаст историю с веткой (если я правильно понимаю). FWIW там - это кнопка «обновление» в TortoiseHg (в поле, где отображается список файлов), а также пункт меню правой кнопки мыши в данной ревизии.

ответ

10

Чтобы установить рабочий каталог в соответствии с состоянием данной ревизии (который может быть tip), вы можете использовать обновление:

  1. правой кнопку мыши на ревизию вы хотите «Возвратить» в.
  2. Выберите «Update»
  3. Проверьте «Потерять локальные изменения» флажок
  4. Нажмите Обновить

Было бы в консоли hg update -r changeset -C.

Теперь вы можете создать результат из «состояния» рабочего каталога в этой точке истории (т. Е. Из исполняемого файла в этом наборе изменений). Если вы не совершаете никаких коммитов, не будет создан набор изменений, и поэтому в историю репо ничего не добавляется.

После того, как у вас есть выход к вашему удовлетворению, вы можете снова обновить до tip развития через тот же процесс и продолжить свою работу:

  1. правой кнопкой мыши на tip развития.
  2. Выберите «Update»
  3. Проверьте «Потерять локальные изменения» флажок
  4. Нажмите обновить

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

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


+0

Благодарим за информацию. См. Редактирование моего OP. «Обновление» в основном работало бы на то, что я хотел, но это немного более тяжело, чем «вернуться», но, возможно, мой вариант использования немного необычен. –

+0

Я обновил свой ответ, чтобы ответить на ваши изменения. @adt_Jeff – Edward

0

Вы можете выбрать все измененные файлы в списке с помощью Ctrl + A, а затем выбрать «Восстановить» из контекстного меню.

+0

Спасибо за информацию. Одна из трудностей с этим подходом (если я что-то не хватает) заключается в том, что нет удобного способа найти то, что все файлы, которые были изменены между текущим рабочим каталогом и нужной версией. (Существует «diff to local», который будет вызывать отдельный инструмент визуального разграничения, но нет хорошего способа запустить «отменить» оттуда). –

Смежные вопросы