`

win7 下 VisualSVN Server post-commit 钩子问题

阅读更多

最近终于把ubutu给彻底给割了,换上了64位的win7,加上自己也总喜欢鼓捣些小玩意代码,纠结于windows上的svn服务器的配置,难不成要我装虚拟机使用linux来充当svn服务器么... 这也比较蛋痛

 

幸好发现了 VisualSVN Server 这个宝贝啊,一键安装完成,确实很爽,本来是无需配置钩子的 我直接把代码建到 虚拟主机对应的目录中不就可以了么,之前我也是这么做的,觉得很爽... 比linux爽 尤其是小乌龟确实比兔子好用

 

废话不说了 配置钩子吧 直接见了之后发现崩溃了 windows bat命令咋写呢

 

几经周折在网上看到一个demo,我是喜出望外啊:

SET REPOS=%1
SET USER=%2
SET SVN="C:\Program Files\TortoiseSVN\bin\svn.exe"
SET DIR="D:\httpenv\web\xp.me1"
(call %SVN% update %DIR% --username kenxu --password 111111 --non-interactive)

代码是可以使用的,不过仅限于双击的时候,其实说白了 TMD的也是 svn update 而已,但是从A处 commit 时在B处并不会更新,而且 乌龟大哥 总是给出

 

post-commit hook failed (exit code 1) with output:

 

svn: E230001: Server SSL certificate untrusted

 

这种错误 我就纠结了 权限我都配置了啊 从浏览器访问没有问题,从命令行访问没有问题 checkout / update 都没有问题,就是 commit 有问题.

 

这是如此の坑的一件事情,我根本怀疑不到是 VisualSVN Server 大哥的问题 直到我无意看了下 任务管理器 发现其对应的用户居然是 network service 当时我想死的心都有了 尼玛的

 

权限问题害死人啊 使用小乌龟 commit的时候 内容是传递到服务器中了,但是调用钩子的时候 却使用的是 用户"network service" 而她只是一个阉割鸡而已,根本木有传说中的写操作权限...

 

果断的在服务中将其登录用户改成是 当前使用的用户 (也就是users组中的用户) 然后 你懂的 ....

 

钩子 windows 上的 钩子 确实如此啊 

 

参考一个样本链接如下: http://my.oschina.net/duguying/blog/128877

 

 

 

 

 

 

 

2
4
分享到:
评论

相关推荐

    实现VisualSVN Server主从同步备份.pdf

    如果在VisualSVN Server主从同步备份过程中,主服务器一直等待提交结束,这种情况通常是因为主服务器需要获得管理员权限,没有管理员权限svn服务器无法执行hooks文件夹下的post-commit.cmd中某些读写权限。...

    VisualSVN Server

    2. 邮件通知:通过配置post-commit钩子脚本,可以在每次提交时自动发送邮件通知相关人员。 3. 备份与恢复:定期备份SVN仓库,防止数据丢失。VisualSVN Server提供了备份工具,也可以结合其他备份方案。 4. 性能...

    windows下在svn钩子中获取,项目名称,作者,日志,时间,版本号

    在windows环境下,提交代码到svn中,使用钩子脚本,获取项目名称,提交人,提交时间,提交的日志信息,版本号,纯bat脚本。ps:不是pre-commit.bat文件,因为在该文件中获取不到真正的版本号。

    SVN自动发送邮件详细配置

    在SVN仓库的hooks目录下,创建一个名为`post-commit`的脚本,通常是bash脚本。这个脚本将在每次提交后执行。 3. **编写`post-commit`脚本** 脚本的主要任务是收集提交信息(如提交者、修订版本、提交消息等)并...

    SVN架设 提交版本的同时更新网站的方法

    总结,通过配置SVN的post-commit钩子,我们可以实现在Windows环境下自动同步提交到Web服务器的功能。这不仅简化了部署流程,还提高了团队的协作效率。在实践中,务必根据项目的具体需求和安全策略调整这一设置。

    windows环境下svn同步web文件.docx

    C:\Program Files\VisualSVN Server\bin\svn.exe update D:\test --quiet --username name --password pwd ``` 这里的`D:\test`是Web服务器上项目目录的路径,`name`和`pwd`分别替换为SVN服务器的用户名和密码。 ...

    svn同步数据

    在以上配置完成后,每次在svn中提交代码时,通过`post-commit`钩子脚本,系统会自动更新Web服务器上的文件,实现了svn与Web服务的实时同步,这对于开发团队协作和部署是非常有用的。在实际操作中,应注意安全性和...

    SVN的安装和配置 SVN的安装和配置

    例如,post-commit钩子可以在每次提交后执行某些操作。 **8. SSL/TLS 安全性** 为提高安全性,可以启用SSL/TLS加密通信。在VisualSVN Server中,可以配置证书和启用SSL。在Linux下,使用Apache HTTPD或Nginx作为...

    svn服务器搭建及自动邮件通知的实现

    1. **创建钩子脚本**:在SVN仓库的hooks目录下,创建一个名为`post-commit.bat`的批处理文件,该文件将在每次提交后执行。 2. **编写脚本**:脚本通常使用Python、Perl或bat命令行来实现。它需要获取提交信息(如...

    Web方式的SVN全文搜索功能实现

    1. **post-commit hook**:配置SVN仓库的post-commit钩子脚本,以便在每次提交后自动触发索引更新流程。 2. **hook脚本编写**:编写Shell脚本或批处理文件,用于获取最新的提交信息并调用索引更新程序。 3. **异常...

    svn管理与配置 svn教程

    例如,通过`svnadmin`命令行工具创建仓库,使用`sasl`进行用户认证管理,以及设置`pre-commit`和`post-commit`钩子来实现提交前后的自动化任务。 4. **SVN系统管理员参考** "svn系统管理员参考手册.doc"会涵盖...

Global site tag (gtag.js) - Google Analytics