更新我的svn工作副本时,知道最后一次提交的注释

时间:2009-10-01 12:41:55

标签: svn pysvn

我正在使用PySVN和工作台来满足我的svn需求,之前我曾经使用过subclipse。当我更新我的工作副本时,这些工具都没有告诉我为什么有人提交了最后一次提交。

我希望它与新的修订号,最后一次提交的评论和由谁一起显示。我自己很擅长python,我试着在pysvn文档中找到帮助,但没有。 (或者pysvn是否已经拥有此功能?)

即使在注释视图中也找不到提交特定行的注释..我是否错误地解释了这个“注释”..它是否应该被隐藏:?

如果有人能指出我正确的方向......

3 个答案:

答案 0 :(得分:3)

快速脚本

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

答案 1 :(得分:2)

我不知道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。将rc中的True和日志消息作为字符串返回。在rc中返回False将导致命令被取消。不允许使用log_message,可能导致命令被取消。 无法处理Unicode字符串。如果您有一个unicode字符串,请将其转换为UTF-8 ...“

答案 2 :(得分:1)

您可以从几乎任何Subversion客户端工具获取日志信息请记住,上次提交日志消息可能无法告诉您任何有用的内容 - 自上次更新以来可能已有50次提交,因此您真的需要查看自您上次提交以来的所有日志消息

此外,您可能希望使用pre-commit hook强制在提交时输入消息。这样你总会有东西可读:)