利用 VisualSVN hooks同步更新到web服务器
博客专区 > GIFCOOL 的博客 > 博客详情
利用 VisualSVN hooks同步更新到web服务器
GIFCOOL 发表于5年前
利用 VisualSVN hooks同步更新到web服务器
  • 发表于 5年前
  • 阅读 4944
  • 收藏 5
  • 点赞 0
  • 评论 5

腾讯云实验室 1小时搭建人工智能应用,让技术更容易入门 免费体验 >>>   

基本配置方法:
条件:
1. web 服务器安装 VisualSVN 和 TortoiseSVN
2. 客户机安装 TortoiseSVN
3. 同时在客户机和服务器创建 web 目录 , 这两个目录都是连接 VisualSVN 的
4. 同时checkout 下文件 , 使这两个目录保持版本一致,最好不要直接编辑 服务器上的 web 目录文件 防止同步错误
5. 在 C:\visualSVN\Repositories\web\hooks (根据自己的安装查找) 下建立一个 post-commit.bat 的文件内容如下:
@echo off
“C:\visualSVN\VisualSVN Server\bin\svn.exe” update “D:\webHost” –username svn –password 000000
解析:
“svn的程序” update “服务器web 目录” –username 用户名 –password 密码

这里hooks 下有 post-commit 模板文件,不过是 linux 下用的例子
post-commit.bat 的作用就是在你用 Tortoise 进行 commit 成功后,执行一个批处理,就是 post-commit.bat 的文件。

我这里只说一下关键点吧:知道这些关键点就不会出现上述问题了:
1. visualSVN 必须设置成 不用 https 来访问的 方式连接
2. 如果你现在遇到上面错误时已经使用了这种https方法,那么就重新设置一下,设置为没有https的方法进行访问! 并重启 visualSVN ,然后将你的已经 checkout 的文件夹删除,重新以新的连接方式 checkout 下来 ,然后再试 因为你以前 checkout 用的是 443 的方法, 再执行 post-commit.bat 时总是调用 443 这个连接, 所以要删除并checkout 一下.

共有 人打赏支持
GIFCOOL
粉丝 44
博文 201
码字总数 58903
评论 (5)
小窝他爹
这个可以同步服务器web文件到本地吗?
502BadGateway

引用来自“Nodesky”的评论

这个可以同步服务器web文件到本地吗?

LZ讲的是如何通过svn提交源代码后,自动将源代码发布到网站目录。 简化发布流程用的。如果想要同步web文件到本地,可以试试 RSYNC
502BadGateway
visualSVN 可以使用https方式,只要解决证书缓存问题就可以了。
建议为visualsvn创建一个低权限用户,并且,将visual的service运行用户设置为你的低权限用户,并且在该用户下至少co过一次源代码,这样visualsvn的service以及hook脚本就可以共享该用户的环境变量以及已经缓存过的ssl证书认证。我是参考
http://blog.tentaclesoftware.com/archive/2009/04/28/37.aspx
这个文章,并且已经成功完成visual svn ssl连接 做SVN自动发布的实验。
GIFCOOL

引用来自“dotpy”的评论

visualSVN 可以使用https方式,只要解决证书缓存问题就可以了。
建议为visualsvn创建一个低权限用户,并且,将visual的service运行用户设置为你的低权限用户,并且在该用户下至少co过一次源代码,这样visualsvn的service以及hook脚本就可以共享该用户的环境变量以及已经缓存过的ssl证书认证。我是参考
http://blog.tentaclesoftware.com/archive/2009/04/28/37.aspx
这个文章,并且已经成功完成visual svn ssl连接 做SVN自动发布的实验。

学习学习
开源X
楼主您好我想问一下如果你这个路径里面
C:\visualSVN\Repositories\web
不止一个项目该怎么办。还是说,它执行update调用post-commit.bat后会自动找到相应的代码库?
×
GIFCOOL
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: