提问的智慧SVN版 - 提问者必读
发新话题
打印

[原创] windows上安装apache2.0.59+SVN+自动邮件通知(完整版)[2008-9-5更新]

求教

配置邮件服务os必须是xp吗?我的是server 2003 安装的时候老是提示不对。

TOP

安装到module-bulid时出现如下错误:

TOP

刚才的图没有显示 在发一遍

附件

1.GIF (5.11 KB)

07-11-14 09:56

1.GIF

TOP

架设好了,可是无法发邮件,直接用命令行格式来调试

如果--repos-path 后面的库地址随便写,邮件可以发送,只是没有详细的内容

一旦填写了正确的库地址,就会出现如下的情况

D:\EasyCM\svn_repos>svnnotify --repos-path D:\EasyCM\svn_repos\sandra -r 1 --to
development@gnt.com.cn --smtp gnt.com.cn
utf8 "\xD0" does not map to Unicode at C:/Perl/site/lib/SVN/Notify.pm line 1959.

utf8 "\xC7" does not map to Unicode at C:/Perl/site/lib/SVN/Notify.pm line 1959.

utf8 "\xC6" does not map to Unicode at C:/Perl/site/lib/SVN/Notify.pm line 1959.

utf8 "\xDA" does not map to Unicode at C:/Perl/site/lib/SVN/Notify.pm line 1959.

utf8 "\xCB" does not map to Unicode at C:/Perl/site/lib/SVN/Notify.pm line 1959.

utf8 "\xC4" does not map to Unicode at C:/Perl/site/lib/SVN/Notify.pm line 1959.

utf8 "\xD4" does not map to Unicode at C:/Perl/site/lib/SVN/Notify.pm line 1959.

utf8 "\xC2" does not map to Unicode at C:/Perl/site/lib/SVN/Notify.pm line 1959.

Child process exited: 0

TOP

测试nmake时提示:
NMAKE:fatal error U1064:MAKEFILE not found and no target specified stop
为什么会有这样的提示?怎么解决?

TOP

求助

运行post-commit.bat时出现这样的提示

附件

{09BA39AF-5876-48DC-AAD2-4F02E4ACD820}.JPG (51.39 KB)

07-11-20 10:23

{09BA39AF-5876-48DC-AAD2-4F02E4ACD820}.JPG

TOP

引用:
原帖由 sandrafish 于 2007-11-15 15:10 发表
架设好了,可是无法发邮件,直接用命令行格式来调试

如果--repos-path 后面的库地址随便写,邮件可以发送,只是没有详细的内容

一旦填写了正确的库地址,就会出现如下的情况

D:\EasyCM\svn_repos>svnnotify --repos-path D: ...
我也碰到类似问题,但看到前面有仁兄加 -c GBK 的建议,加上后用命令行即可正确发送邮件,不再出现那一堆错误信息。邮件也可以发送,填写正确的库地址,发送内容中中文文件名也没有出现乱码。不知这样是否能同样解决你的问题。

但我遇上的问题是这样:
我在windows 2003 server + apache 2.0.59 + svn 1.4.5 + TortoiseSVN 1.4.5 配置好后svn可正常使用,当我配置邮件自动收发时,遇上这样的问题,命令行下可以用svnnotify直接发送出邮件。然后post-commit.bat直接双击执行也可以发送出邮件,但我对版本库修改后,却没有自动发送出邮件,但post-commit.bat确实被激发调用了。这是怎么回事呢?我怀疑是windows 2003 server 与 apache svn的权限设置有问题,部分命令因权限问题得不到执行,但具体如何解决呢?有没有有经验的朋友指点一下,不胜感激。

我的post-commit.bat内容如下:
echo Launched!>d:\test.txt
svnnotify --repos-path d:\svn\developmentlib -r 1 --to xxx@xxx.net --smtp xxx.xxx.net -c GBK

TOP

刚发完贴,回头就解决了上面的问题,而且解决得我莫名其妙,一头雾水。。。。

想应该是权限问题,试着对一些目录增添用户权限,然后再试发。直到我对apache的安装目录(我装载c:\program files下)添加NETWORK 、NETWORK SERVICE用户及相应权限,然后试着修改版本库内容,提交,喔~,发出去了。。。
以为自己在做梦,去掉apache的安装目录刚添加的用户权限设定,修改版本库内容,提交再试。。。喔~,还是能发出去。。。。。
不死心,确定去掉了权限,重启机器,再试。。。shit!,它还是自动能发出去。。。我回不到发不出去的状态了。。。
这瞎猫碰到死耗子也忒那个。。。。

更可恶的是,这个问题解决了,但我用TortoiseSVN,修改文件后,commit时,Message栏内修改日志填入英文即可正常发送邮件,填入中文就又不能发送了。。。。郁闷尝试解决中。。。(我是在同一台机器上装的TortoiseSVN客户端试,其他机器上用此客户端是否也这样,还没试)

我对windows 2003 server的安全策略方面很是生疏,问题不见了但找不到原因,还莫名其妙。。。望有高手不吝赐教,给小生指点迷津。

TOP

看来这段时间没人看到我的问题啊,我自己基本都解决了,希望我的经验能给别人一些帮助吧。

上一个问题:如果版本库更改,修改日志(Message)填写中文会导致邮件不能发送出去。命令行下试验,应该是报错类似“Wide character in subroutine entry at....”,发送失败。
修改字符集相关参数为:--charset GB2312 --io-layer raw
问题解决,邮件中既无中文的乱码,修改日志用中文字符也可正常自动发送邮件。

感叹一下:
本人不懂perl,也都是根据一些错误提示和网上的相关问题在perl目录下文件里瞎转,发现其实很多问题都是自己没有配置好造成的(软件的作者和相关文档的作者真是细心兼强悍啊)。相关的配置方法和说明都很详尽,很多时候都只是我们用的人没有找到或没有好好看而已(惭愧中。。。)。估计高手们也忙得顾不上一个一个帮解决了,呵呵。

不能收发邮件的问题:按楼主的步骤部就班做就好了,但最后实际情况各人可能略微不同。比如我的post-commit.bat内容最后为:
set REPOS=%1
set REV=%2
svnnotify --repos-path %REPOS% -r %REV% --to xxx@xxx.net --smtp xxx.xxx.net  -H HTML::ColorDiff -d --subject-prefix [Saming_Server SVN] --charset GB2312 --io-layer raw

但如果加上
SET PATH=C:\PERL\BIN;
SET OS=Windows_NT
SET SystemRoot=C:\WINDOWS
邮件就自动发不出去了。。。但我的安装目录都在c盘,默认安装。应该是环境变量问题吧,我暂时没时间去详细找原因。

楼主其实该提供的东西都给了,尤其SVN-Apache-SVNNotify-HowTo-En.pdf里面的内容,7. SVN Notify Configuration里的两个warrning就基本解释了我前面遇到的一些鬼问题。剩下的就是自己调试了,我开始竟然没有注意。。。

字符集的问题:svnnotify的帮助里也都有了,我自己没去看而已。。。。,如下:
=item charset

  svnnotify --charset UTF-8
  svnnotify -c Big5

The character set typically used on the repository for log messages, file
names, and file contents. Used to specify the character set in the email
Content-Type headers and, when the C<language> paremeter is specified, the
C<$LANG> environment variable when launching C<sendmail>. Defaults to "UTF-8".

=item io_layer

  svnnotify --io-layer raw
  svnnotify -o bytes

The Perl IO layer to use for inputting and outputting data. See
L<perlio|perlio> for details. Defaults to "encoding($charset)". If your
repository uses different character encodings, C<charset> should be set to
whatever is the most common character encoding, and C<io_layer> is best set to
C<raw>. In that case, some characters might not look right in the commit
messaage (because an email can manage only one character encoding at a time),
but then C<svnnotify> won't get stuck issuing a slew of warnings.
(用ue直接打开Notify.pm文件也可以看到)
看来很多东西都是自己没去好好找而已,写这么多的注释和说明,高手们也费了不少功夫吧。我们菜鸟学起来也要努力呢,^_*   祝大家用这些“鬼东西”一切顺利哦!哈

TOP


求助

用命令行运行post-commit.bat时,如下图,可是收不到邮件

附件

1.GIF (11.3 KB)

07-12-10 11:39

1.GIF

TOP

好像也没有报什么错的样子,那执行该命令是,网络连接托盘图标有亮闪吗(实际发送了数据)?。我的只要确实发送了,都可以明显看到。会不会是你使用的邮件服务器的问题呢?。。。

TOP

我也遇到这个问题:
NMAKE:fatal error U1064:MAKEFLIE not found and no target specified stop
怎么解决?

TOP

问下,SVN和Apache 我都安装成功也可以访问,可是在perl 的时候就卡住,我也发现环境配置已经有了,而且我也重启过好几次,就是不通!!!!!!

那位大侠知道是那里出现问题了吗? 我是按照一步一步安装过来的 。。。

[ 本帖最后由 xiaofengtoo 于 2007-12-29 17:40 编辑 ]

TOP

感谢楼主提供这样好的文章。

TOP

文中

{2. 安装subversion1.4.0,从这里下载http://www.iusesvn.com/bbs/download/svn-win32-1.4.0.zip
安装到默认路径为C:\Program Files\Subversion
默认安装后,在apache的配置文件中会自动加入以下两行。
LoadModule dav_svn_module "C:/Program Files/Subversion/bin/mod_dav_svn.so"
LoadModule authz_svn_module "C:/Program Files/Subversion/bin/mod_authz_svn.so"}

    在试验过程中,发现zip版的subversion 由于只是解压到某目录下,故解完后在apache的配置文件中自动添加文中的两行。但当安装“exe”版本subversion时,可自动添加,并成功安装。
    请楼主查看~~~ 并更新~   
    人民感谢你~

TOP

引用:
原帖由 chenxing83 于 2008-2-26 10:40 发表
文中

{2. 安装subversion1.4.0,从这里下载http://www.iusesvn.com/bbs/download/svn-win32-1.4.0.zip
安装到默认路径为C:\Program Files\Subversion
默认安装后,在apache的配置文件中会自动加入以下两行。
LoadModule ...
谢谢,我已经添加上去.

TOP

太TMD强大了。虽然我现在还没试过把邮件系统集成进来

TOP

apache2.0.59下载路径下到的是2.2.3的???

TOP

请问一下为什么配置svn支持邮件发送时,post-commit.bat和post-revporp-change.bat文件都会运行错误?都收不到邮件?这是问什么呢?请高手指教!

TOP


回复 45# 的帖子

这个问题不影响到后的,可以继续安装。

TOP

发新话题
本功能由奇虎问答实现

相关主题

标题 作者 最后发表
扫描版本库中锁的情况,并给锁的拥有者发邮件通知 go2cxg 2008-11-27
windows SVN 自动发送邮件 Felix329 2008-06-04
svn服务无故停止 pyp 2008-11-04
myeclipse5.1的svn插件问题 summer 2008-09-18
Hooks实现对系统里面锁的管理 go2cxg 2008-08-14
点击阅读更多关于的相关帖子  更多相关主题
订阅 我用Subversion - SVN中文论坛 邮件列表:iUseSVN@googlegroups.com
电子邮件:
网站重要事项将会在这个列表进行通知,点击这里浏览存于列表中的所有邮件