Быстрый вопрос Я не могу найти для себя жизнь: как сравнить 2 ревизии в PyCharm без изменений между ними будучи включенным в сравнение?Как сравнить 2 ревизии в PyCharm без учета промежуточных версий
Я использую закладки для функций (поскольку ветви для более долгосрочного использования, такие как тестирование, разработка и т. Д.). Я кодирую несколько функций (в отдельных записях) и нажимаю их. Через некоторое время я пойду вверх по течению и просмотрю код. Тем не менее, множественные коммиты из нескольких закладок объединяются, и когда я пытаюсь выполнить сравнение, я получаю код из разных закладок, загрязняющих сравнение.
Пример:
|
o r10 - baseline
o \ r11 - feature B work
| o \ r12 - feature A work
| | o \ r13 - feature C work
| o | | r14 - feature A work (complete)
Я хочу сделать сравнение между пересмотром 14 и 10, чтобы сделать обзор кода на особенность а, но когда я делаю код от изменений 11, 12 и 13 включены в сравнение.
Это бесит, потому что, когда я решаю, что код хорош и объединить закладку в базовую линию, после совершения я получаю список изменений, которые показывают мне изменения между базовым уровнем и функцией A без промежуточных ревизий. Я мог бы просто использовать это, но я бы предпочел, так как случайное нажатие «ввести» может передать код, я не могу использовать другие инструменты PyCharm, так как я «застрял» в окне обзора фиксации и по другим причинам.
Вы не показываете, как на самом деле отображается * график * ваших изменений, но, учитывая ваш вопрос, я предполагаю, что это линейная история для этих наборов изменений. Тогда вы неправильно используете ртуть. Вы должны использовать отдельную голову, таким образом, расходящуюся историю, для каждой отдельной функции, над которой вы работаете, и пытаться протестировать и не сбрасывать все вместе в одной линейной истории. И только слияние функции в вашу основную линию приняло голову, когда она была одобрена. – planetmaker
Каждая функция представляет собой отдельную закладку и, следовательно, отвлекается от базовой линии (по моему мнению, это то, что делает Mercurial, когда есть 2 или более закладок, и вы выполняете работу с ними, автоматически создается новая глава). Проблема в том, что, когда я нажимаю код, который нужно пересмотреть, история переплетает номера ревизий, поэтому, несмотря на то, что каждая функция расходится, их номера пересмотра смешиваются вместе, и это похоже на приведенный выше пример. Вот почему я получаю желаемую функциональность, когда я снова объединяю закладку; Я просто хочу, чтобы эта функция была отделена от окна фиксации. – MendAndDefend
В вашем отредактированном примере с графиком: 'hg diff -r10: 14' предоставит вам diff, который состоит из линейной истории между r10 и r14, таким образом, изменения 12 и 14). Таким образом, либо pycharm делает что-то внятное, либо ваш график выглядит по-другому. Но не забудьте дать как начальную, так и конечную ревизию, или ваша текущая проверенная ревизия принимается за один конец. – planetmaker