Знайте комментарий для последнего коммита, когда я обновляю свою рабочую копию SVN

Я использую PySVN и верстак для моих потребностей SVN, и я ранее использовал Subclipse. Когда я обновляю свою рабочую копию, ни один из этих инструментов не указал мне причину, по которой кто-то совершил последний коммит.

Я хочу, чтобы он показывал вместе с новым номером ревизии, комментарий для последнего коммита и кем. Я сам очень хорошо разбираюсь в python, я пытался найти помощь по этому вопросу в документации pysvn, но ничего. (Или у pysvn уже есть эта функция??)

Я не смог найти комментарий для фиксации определенной строки даже в представлении аннотирования... я неправильно интерпретирую этот "комментарий"... он должен быть скрыт:?

Если бы кто-нибудь мог указать мне правильное направление...

3 ответа

Решение

Быстрый сценарий

#!/bin/bash
svn up
svn log --limit=1

Я не знаю о PySVN, но из командной строки вы можете использовать, я полагаю:

svn log -v

чтобы получить последний комментарий комментировать полную информацию. Конечно, PySVN имеет возможность сделать это.

Глядя на документ PySVN, я нашел этот пример о pysvn.Client.callback_get_log_message

import pysvn

log_message = "reason for change"
def get_log_message():
    return rc, log_message

client = pysvn.Client()
client.callback_get_log_message = get_log_message

"... callback_get_log_message вызывается, когда для завершения текущей команды требуется сообщение журнала. Верните True в rc и сообщение журнала в виде строки. Возвращение False в rc приведет к отмене команды. Пустое log_message не разрешено и может привести к отмене команды. Строки Unicode не могут быть обработаны. Если у вас есть строка Unicode, преобразуйте ее в UTF-8..."

Вы можете получить информацию о журнале практически из любого клиентского инструмента Subversion. Имейте в виду, что последнее сообщение в журнале коммитов может не дать вам ничего полезного - с момента вашего последнего обновления может быть 50 коммитов, поэтому вам действительно нужно просмотреть все сообщения журнала, так как вы последний совершенный.

Кроме того, вы можете захотеть использовать ловушку pre-commit для принудительного ввода сообщения при коммите. Таким образом, у вас всегда будет что почитать:)

Другие вопросы по тегам