SVN邮件通知功能

2023-05-16

attention:“======================”之间的为发邮件功能的脚本,需要将脚本内容复制到post-commit.bat里面,然后把post-commit.bat放入svn版本库目录的hooks目录下面。

=================================================================================================================================

@echo on
rem 获取hooks目录和版本库目录
set REPOS=%1
set REV=%2
rem 产生随机数,作为日志的文件名
set RD=%RANDOM%
rem 邮件的用户名(mail_user)和密码(pass)
set mail_user=1234567
set pass=888888

svnlook info %REPOS% > C:\svnemail\INFO_%RD%.txt

svnlook changed %REPOS% > C:\svnemail\CHG_%RD%.txt

sed -e "1"p -n C:\svnemail\INFO_%RD%.txt > C:\svnemail\temp.txt&&for /f  %%i in (C:\svnemail\temp.txt) do  set user=%%i
sed -e "2"p -n C:\svnemail\INFO_%RD%.txt > C:\svnemail\temp.txt&&for /f  %%i in (C:\svnemail\temp.txt) do  set dtime=%%i
sed -e "4"p -n C:\svnemail\INFO_%RD%.txt > C:\svnemail\temp.txt&&for /f "tokens=*" %%i in (C:\svnemail\temp.txt) do  set LOG_MSG=%%i

 

echo Dear %user% : >> C:\svnemail\MSG_%RD%.txt

echo         目前提交的版本号是:%REV% >> C:\svnemail\MSG_%RD%.txt

echo         提交时间 :%date:~0,10% %time:~0,8% >> C:\svnemail\MSG_%RD%.txt

echo         提交日志 :%LOG_MSG% >> C:\svnemail\MSG_%RD%.txt
echo     ---------------------------------------------------------------以下是%user%最新提交的内容-------------------------------------------------------------------------- >> C:\svnemail\MSG_%RD%.txt
echo         提交的文件内容如下 : >> C:\svnemail\MSG_%RD%.txt

echo.   >> C:\svnemail\MSG_%RD%.txt

type  C:\svnemail\CHG_%RD%.txt >>  C:\svnemail\MSG_%RD%.txt
echo     ---------------------------------------------------------------以上是%user%最新提交的内容-------------------------------------------------------------------------- >> C:\svnemail\MSG_%RD%.txt
echo                                                                                                             tanzugan >> C:\svnemail\MSG_%RD%.txt
echo                                                                                                       %dtime% >> C:\svnemail\MSG_%RD%.txt


type  C:\svnemail\scm.txt >>  C:\svnemail\MSG_%RD%.txt

blat C:\svnemail\MSG_%RD%.txt -to test@zugantan.com  -cc 1234567@qq.com  -base64 -charset Gb2312 -subject "SVN库当前提交情况,提交者:%user% SVN当前版本号:%REV%"  -server smtp.qq.com -f 1234567@qq.com  -u %mail_user% -pw %pass%

-========================================================================================================================================

注意:C:\svnemai目录必须手动新建,-to是收件人,-cc是抄送人。在svnemail文件夹里面手动新建一个scm.txt文件。
在系统中必须要有blat和sed文件。附件有下载blat和sed文件。或者网上下载,需要把blat和sed文件添加到环境变量中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SVN邮件通知功能 的相关文章

  • 合并来自并行 Subversion 存储库的更新代码

    我想知道人们在将实时 持续更新的 SVN 存储库与离线存储库 更新频率较低 合并时通常会采取哪些步骤 以我的场景为例 不久前我下载了BugTracker NET系统 当时它的版本是3 2 3 随后我对我们业务的代码进行了一些增强 我们使用
  • Capistrano 部署擦除数据库?

    我已成功使用 Capistrano 将我的应用程序部署到生产环境 但我不明白如何处理我的数据库 我正在使用颠覆和乘客 当我运行 cap 部署时 新部署会重新启动一切 它会清除添加到数据库中的数据 显然 必须有一个解决方案 但我很惊讶没有在网
  • IntelliJ Idea 无法与 svn 更新一起正常工作

    在 IntelliJ Idea Community 版本中进行 svn 更新或比较操作时 我不断遇到相同的错误 svn E175002 Received fatal alert unexpected message svn E175002
  • 基于网络的颠覆查看器[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 对于独立开发人员来说,通过 file:// 访问 Subversion 存储库有什么缺点吗?

    如果您的开发计算机上安装了 Subversion 并且您不在团队中工作 那么您是否有任何理由应该使用 Subversionsvn协议而不是file 如果您自己在一台机器上工作 那么根据我的经验 使用 file 协议效果很好 即使我的团队在远
  • git svn 克隆特定分支并合并

    我希望将我的代码库从 svn 迁移到 git 我的 svn 仓库中有太多分支 我只想克隆几个分支并将它们合并在一起并将其推送到 git 我想避免克隆所有分支 因为这需要很长时间 我该如何实现这一目标 完成后 我想定期从这些 svn 分支获取
  • svn delete --keep-local 还会阻止文件在更新时被删除吗?

    我在 SO 上看到了很多关于使用 svn delete 和 keep local 标志来将文件保留在本地 同时在存储库中删除它的很好的答案 不幸的是 我无法找到任何有关该文件在更新时是否会从同事计算机上删除的信息 因为该文件已从 svn 中
  • 使用 git-svn (或类似的)*只是*来帮助进行 svn 合并?

    我的项目中出现了一些复杂的颠覆合并 已经分开很长时间的大分支 Svn 给出了太多的冲突 其中一些看起来是虚假的 鉴于git因卓越的合并体验而受到称赞 用起来有什么好处吗git svn just for使合并更易于管理有何好处 你能推荐其他选
  • SVN提交失败,访问被禁止

    最近我面临着提交SVN的问题 我使用的SVN服务器是VisualSVN Server 2 5 9 客户端是TortoiseSVN 1 7 12 起初 一个用户在将文件提交到 SVN 时遇到问题 但该用户仍然可以访问存储库并下载更新 第二台
  • 让 subclipse 在 Ubuntu 64 和 Indigo 上工作 - 加载了不兼容的 JavaHL 库。需要 1.7.x 或更高版本

    我该如何解决 我在 ubuntu 64 上使用 Eclipse indigo 我安装了http subclipse tigris org update 1 8 x http subclipse tigris org update 1 8 x
  • TortoiseSVN svnadmin

    目前我正在设置 TortoiseSVN 并阅读文档等 手册中经常提到svnadmin 我发现我必须下载它分别地 http groups google com group tortoisesvn browse thread thread e2
  • 如何修复损坏的本地 Subversion 工作副本?

    我通常使用 git 对 Subversion 的基础知识知之甚少 所以请保持温柔 我在 Windows 7 上使用 TortoiseSVN SVN 客户端最近宣布需要升级 所以我就这么做了 所有文件都丢失了源代码管理图标 并且资源管理器中出
  • 如何在Windows控制台中递归使用“svn add”?

    当我跑步时 svn st 在我的工作副本上我得到一些 位于工作副本根目录的子目录中的条目 我想将它们全部添加到存储库中 我尝试 svn add force and svn add force 但它不起作用 工作方案 svn add dept
  • Windows XP 上无法打开存储库错误

    我正在尝试提交到我的本地 SVN 它一直工作得很好 但今天它给出了这个错误 Unable to open repository file C wamp www svns myproject dir subdir 可能是什么问题呢 编辑 完整
  • 加载了不兼容的 JavaHl 库

    我在使用 Subclipse 和 JavaHL 库时遇到问题 Subclipse 它给出了错误 加载了不兼容的 JavaHL 库 需要 1 8 x 或更高版本 我使用的是 Ubuntu 桌面 12 04 32 位 Subclipse 1 1
  • 如何配置hudson忽略指定SVN文件夹下的更改?

    我正在寻找一种方法来忽略 Hudson 中指定 SVN 文件夹下的更改 这与 TeamCity 中的排除文件夹和 CC Net 中的过滤器相同 我在SVN GUI配置下没有找到任何配置选项 在 Hudson 1 334 中 在构建配置中的
  • 在 Ubuntu 12.04 上的 Apache 上配置 SVN 服务器

    我正在尝试通过 HTTP 访问现有的 Subversion 服务器 我的dav svn conf文件看起来像
  • 尽管有 svn 复制,如何 git svn 克隆完整历史记录

    在我的公司 我们即将从 svn 切换到 git 我们使用的 SVN 非常大 没有 svn 布局 并且在每个版本拆分上我们都制作了一个 svn 副本 SVN存储库结构 svnserver company de product xy 主要版本号
  • 如何在 SVN 中分支单个文件?

    分支的颠覆概念似乎专注于创建整个存储库的 不稳定 分支 并在其上进行开发 是否有一种机制可以创建单个文件的分支 对于用例 请考虑具有多个特定于平台的源代码 c 实现的通用头文件 h 这种类型的分支是永久性的 所有这些分支都将不断发展 偶尔会
  • SVN错误155009:无法运行WC DB工作\无法打开文件\系统找不到指定的文件

    I found 信息贫乏 https www google com webhp q 22Failed 20to 20run 20the 20WC 20DB 20work 20queue 20associated 20with 22 20 2

随机推荐