公司停电造成的SVN上传后有报错
post-commit用于同步web目录的配置文件
SVN设置了开机启动,所以客户端我们上传和更新文件正常,但是有如上的报错,
并且浏览器访问web站点没有新上传的项目内容。
解决方法
1.删除或者修改掉原来同步的项目文件夹
2.使用putty工具登录服务器,cd到项目路径下 cd /var/www
3.从svn库里检出svn文件库到www 目录 svn co svn://localhost/html
4.结果出现SVN报错No repository found in 'svn://localhost/html'
报这个错误原因是因为启动SVN服务时指定的仓库路径不对,把原来的进程kill掉,再重新指定正确的仓库根目录就行了。不用像网上一些说另外建立仓库指定那么麻烦,直接按照一些命令一步一步来就完事了
4.1.查SVN使用的3690端口监听的PID号,如下8236就是记住你查出来的
[root@xxxxxx~]# netstat -apn|grep 3690 tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 8236/svnserve
4.2.[root@xxxxxx~]# ps -aux|grep 3690
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ root 8460 0.0 0.0 103256 840 pts/0 S+ 10:18 0:00 grep 3690
4.3.[root@xxxxxx~]# ps -aux|grep 8236
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ root 8236 0.0 0.0 156996 1012 ? Ss 09:52 0:00 /usr/bin/svnserve --daemon --pid-file=/var/run/svnserve.pid root 8476 0.0 0.0 103256 840 pts/0 S+ 10:19 0:00 grep 8236
4.4.关闭PID 8236这个进程,这个PID是上面查3690端口查出来的,大家根据自己的改
[root@xxxxxx~]# kill -9 8236 4.5.[root@xxxxxx~]# ps aux|grep svnserve root 8506 0.0 0.0 103256 840 pts/0 S+ 10:19 0:00 grep svnserve 4.6.[root@xxxxxx~]# svnserve -d -r /var/www/ 4.7.[root@xxxxxx~]# ps aux|grep svnserve root 8533 0.0 0.0 156996 756 ? Ss 10:20 0:00 svnserve -d -r /var/www/ root 8549 0.0 0.0 103256 840 pts/0 S+ 10:20 0:00 grep svnserve
5.完成后重新在WWW目录下检出html项目,记住别忘了
cd /var/www svn co svn://localhost/html
6.检出成功后,再次将html里的所以文件属性改成apache权限,修改conf数据库访问路径,删除本不该上传同步出来的缓存目录Runtime。
更新和上传文件没有报错
访问也成功