Slice: - у вашей ноги появляется змея. Он движется от невидимого до видимого. Наше видение показывает (как срез) только часть мира. Аналогично, фрагмент Python извлекает элементы, основанные на запуске и остановке. Мы берем фрагменты на многих типах в Python. Мы указываем необязательный первый индекс, необязательный последний индекс и необязательный шаг.
values[1:3] Index 1 through index 3.
values[2:-1] Index 2 through index one from last.
values[:2] Start through index 2.
values[2:] Index 2 through end.
values[::2] Start through end, skipping ahead 2 places each time.
вы можете получить хорошие примеры по ссылке ниже: - пример обозначения фрагмента питона
Возможно, вы можете показать журнал, проверить предыдущую ревизию (n-1), в контекстном меню выбрать «Вернуть к этой ревизии» и зафиксировать изменения (она станет n + 1, где n - текущая плохая голова)
Вы можете сделать это, используя svnadmin dump
и svnadmin load
.
Ответы на этот вопрос могут помочь: Nuking огромный файл в svn репозитории / g2]
Использование TortoiseSVN, если вы хотите просто увидеть репозиторий в версии до совершения нарушения:
Вы можете svn cp конкретных изменений, поэтому, если нет никаких промежуточных операций, которые вы хотите сохранить, вы можете svn rm в каталоге для нарушителей, а затем svn cp в старой версии. См. Раздел Peg и Operative Revision книги
Самый чистый способ - отменять изменения
Вы можете использовать svn merge для «отмены» изменения в вашей рабочей копии, а затем совершить локальную модификацию в хранилище. Все, что вам нужно сделать, это указать обратную разницу. (Вы можете сделать это, указав
blockquote>--revision 303:302
или эквивалент--change -303
.)Я понимаю, что это не означает, что это так, что последнее совершение никогда не происходило "в том смысле, что commit все еще является частью истории, но я считаю, что лучше сохранить эту неудачную фиксацию в истории. Он может включать в себя некоторые незавершенные работы, которые можно запросить / сравнить с тем, чтобы легко переделать новое правильное коммит.
Даже если:
- SVN (1.5) укажите следующую команду
obliterate
, которая выполнит задачу по постоянному удалению информации, а- упомянуть
svndumpfilter
как возможное обходное решение (в том, что оно обеспечивает способность быстро и легко изменять данные dumpfile, действуя в качестве фильтра на основе пути).... Лучше не пытаться скрутить инструмент SCM во что-то, что он не предназначен для выполнения в первую очередь. Историей (наряду с распараллеливанием с ветвлением) являются две основные особенности СКМ.