2009-10-30 58 views
0

棘手的问题: 我需要以下情况发生:使用TortoiseSVN自动插入评论?

1)在你点击提交时,TortoiseSVN应该插入到代码文件发出法律声明,评论被COMMITED。我只是在谈论客户端事件。

2)Svn:关键字不起作用,因为这些关键字需要在文件中。

可能有办法为乌龟写插件吗?

+0

不确定你的意思,在结帐时没有提交文件... – RedFilter 2009-10-30 17:09:47

+0

请避免修改正在提交的文件。更好地检查他们是否遵守(例如,如果法律声明存在)并拒绝承诺,如果他们不遵守。 – Francesco 2009-10-30 17:15:24

+0

是的,我知道挂钩不起作用。我不是在谈论服务器操作。只有客户的行动。 – Chicago 2009-10-30 18:03:34

回答

2

的客户端脚本(SAFE但具体svn客户端):

的唯一安全的方式做到这一点是使用的客户端脚本。这里就暗示如何与TortoiseSNV执行此: http://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-dug-settings.html

不要使用服务器钩子脚本:

服务器端钩子脚本不会帮助,这是不允许有修改数据(想过没有执行) 。原因是服务器端脚本无法修改您的本地副本,并最终导致数据不匹配。有关详细信息,请参阅http://svnbook.red-bean.com/nightly/en/svn.reposadmin.create.html#svn.reposadmin.create.hooks

+0

我不知道客户端挂钩。几乎肯定的是,这是我所需要的。将尝试它,让你们知道。谢谢! – Chicago 2009-10-30 18:12:57

+0

我忘了说,但很明显,你将不得不在所有客户端上安装钩子脚本......(通过服务器钩子检查来执行给定的格式 - >这会产生协同效应,让用户自己安装脚本) – jdehaan 2009-10-31 09:23:03

+0

是的,那正是我计划要做的。此外,还有一种方法可以更改注册表(这是存储客户端挂接设置的地方)。这个改变可以用脚本完成。 – Chicago 2009-11-01 16:14:56

2

这应该是客户端行为吗?如果它真的很重要,为什么不在服务器上预先提交钩子来验证免责声明,并在代码不存在的情况下更新代码?

+0

不允许在commit脚本中修改钩子脚本中的内容:请参见http://svnbook.red-bean.com/nightly/en/svn.reposadmin上的“不要使用钩子脚本修改提交事务”。 create.html#svn.reposadmin.create.hooks] – jdehaan 2009-10-30 17:49:25