В git есть команда git commit --amend
для редактирования вашего последнего сообщения коммита. Я искал этот тип функциональности в pycharm и не могу найти его. Я гуглил и ничего не нашел. Существует ли это в pycharm?
Как отредактировать сообщение коммита в PyCharm?
Ответы (7)
У меня была точно такая же проблема, и я подумал, что должен уточнить и собрать все вышеупомянутые знания, которые сработали для меня, в одном месте:
В системе контроля версий выберите «Зафиксировать изменения», затем отметьте Изменить фиксацию», выберите новое изменение, которое нужно зафиксировать, и добавьте новое сообщение о фиксации (чтобы заменить сообщение предыдущей фиксации). Наконец, выберите «Зафиксировать».
После комментария LazyOne на https://www.jetbrains.com/help/pycharm/2016.1/commit-changes-dialog.html?origin=old_help#d774054e346 объясняет, как работает опция Изменить фиксацию". Кроме того, как было ясно отмечено Лиамом Джонсом , вы должны не только отметить параметр Изменить фиксацию", но и выбрать фиксацию нового изменения (достаточно любого небольшого изменения), чтобы кнопка Подтвердить внизу становятся доступными.
Когда вы выполните описанные выше шаги, эта новая фиксация вместе с изменениями предыдущей фиксации будут объединены с использованием последнего сообщения фиксации; другими словами, таким образом вы заменяете сообщение коммита вашего последнего коммита.
Конечно, вариант git commit --amend
(как описано здесь https://git-scm.com/book/en/v2/Git-Basics-Undoing-Things), возможно, является другим (более чистым) способом для тех, кто может работать вне IDE.
Вместо того, чтобы использовать VCS «Commit Changes...» и вносить поправки, я счел более интуитивно понятным показать журнал Git и из контекстного меню предыдущей фиксации выполнить «Reset Current Branch to Here». Во всплывающем окне выберите «Мягкий» сброс, который не изменяет файлы и выполняет поэтапные изменения для фиксации.
Это больше похоже на то, как должна работать отмена, возвращающая проект в то состояние, в котором он был до того, как я по ошибке выдал фиксацию с неправильным сообщением.
Диалоговое окно фиксации PyCharm содержит изменить commit, который позволяет вам вносить дополнительные изменения в предыдущую фиксацию и редактировать сообщение фиксации, пока вы это делаете.
Однако я не думаю, что есть способ отредактировать предыдущее сообщение фиксации без внесения дополнительных изменений в файл, потому что PyCharm не позволит вам зафиксировать, если не выбрано никаких изменений файла.
На данный момент я просто спускаюсь в консоль и выполняю git commit --amend
.
Вы также можете использовать rebase из pycharm в интерактивном режиме и применить «reword» к коммиту, в котором вы хотите отредактировать сообщение.
Нет необходимости возвращаться. Вы можете просто щелкнуть коммит, который хотите отредактировать, а затем нажать Shift+F6. Окно редактирования появится для вас.
Если вы не отправили фиксацию, вы можете довольно легко перефразировать сообщение фиксации. Перейдите на вкладку «Контроль версий» (Alt-9 Win/Linux, Cmd-9 macOS) и щелкните вкладку «Журнал» в ее окне.
Вы увидите список коммитов. В этом случае вам нужен первый. Либо щелкните его правой кнопкой мыши и выберите Reword, либо выберите его (возможно, он уже выбран) и нажмите F2, чтобы открыть окно редактирования. Отредактируйте сообщение о коммите, затем нажмите «ОК».
Параметр «Изменить фиксацию» не отображается для меня. Вместо этого, поскольку мы все равно используем Pycharm, я просто открываю вкладку терминала в Pycharm и просто запускаю команду, которую вы уже упомянули в своем вопросе: D