VSS错误自动修复
公司项目开发源代码管理一直用vss,从vss6.0用到vss8.0(vss2005),在近两年的试用中碰到一些大大小小的问题:
1:vss服务迁移,这个比较好办,直接将整个vss目录拷贝过去,加上相应的权限就行了
2:vss错误修复,
由于各种原因(vs出错,vs强行结束,网络错误,vss服务器异常启动,关机等),1个工作日下来,vss服务或多或少的总有一些问题,vss出了错误后,从vs中打开程序有时候会很慢或异常,所以必须要修复。由于对vss了解肤浅,处理这个问题也经历了几个阶段
a、运行 Microsoft Visual SourceSafe Administration 后,如果有错误,会提示需要检查修复,一般就用这个检查下。
运行时间:不定期
其实这里面有问题,它应该只是检查了错误,而没有修复错误。
b、手动运行批处理文件修复
a方法每次都需要人工去运行挺麻烦,就做了1个批处理文件。点击执行就可以了。批处理文件内容如下:
"c:\Program Files\Microsoft Visual SourceSafe\analyze.exe" -f e:\vss\data
用法就不具体解释了,可以在dos命令下查看analyze.exe的使用说明
运行时间:1周1次,需要确保所有用户都没有使用vss
c、自动运行修复
用了AutoMate(定时执行任务的工具,比较好用,功能很强大)来自动运行vss修复任务
运行时间:1周几次,设置在凌晨1:00运行(具体看各自情况)
但运行了几个月后,最近发现1点问题,修复失败了,错误如下:
Visual SourceSafe Analyze Version 8.0
Copyright (C) Microsoft Corporation. All rights reserved.
Database analysis in progress @ 07-10-06; 8:11.
File e:\vss\data\status.dat is already open
Cannot rebuild the database while Visual SourceSafe is being run. Make sure all users have exited SourceSafe and try again.
Analysis complete @ 07-10-06; 8:11
但检查用户确没有发现有用户连接vss。google下之后,没有找到好的办法,只好将vss服务重启了下,就不报这个错误,就能正常修复了。估计是缓存原因引起的。
找到问题后,将自动运行的批处理文件内容做了一些修改,停止vss服务,修复vss,启动vss服务,批处理内容如下
net stop ssservice
"c:\Program Files\Microsoft Visual SourceSafe\analyze.exe" -f e:\vss\data
net start ssservice
经运行证实可行。 但还有个问题,如果分析的过程中异常了,vss服务将不能启动,所有做个调整,重启vss服务后,再修复,批处理文件内容如下:
net stop ssservice
net start ssservice
"c:\Program Files\Microsoft Visual SourceSafe\analyze.exe" -f e:\vss\data
最后强调一点:修复vss的时间,一定要再vss使用闲时,因为vss修复时vss不能提供服务。
附注:
几篇参考文章:
http://www.cnblogs.com/kaima/archive/2007/06/26/693268.html
http://www.cnblogs.com/LeeWenjie/archive/2006/11/24/509498.html
http://www.cnblogs.com/RChen/archive/2006/01/12/315861.html
http://support.microsoft.com/kb/279191/zh-cn
VSS错误自动修复的更多相关文章
- [原创]Windows Server 2003 物理机转换为VMware虚拟机出现VSS错误的处理
一台Windows Server 2003 物理机需要转换为VMware虚拟机,工具为Vmware vCenter Converter Standalone 6.0,转换开始就出现错误“FAILED: ...
- VSS错误:The Sourcesafe Web service cannot be accessed at the specified address
第一次使用正常,今天再次打开vs项目的时候就突然连不上vss的服务器了. 手动修改连接的时候会让输入一个address(http的) (一般正常的连接会是浏览的方式找到服务器文件的地址的) ...
- Team Foundation 中的错误和事件消息
Visual Studio Team System Team Foundation 中的错误和事件消息 Team Foundation 通过显示错误消息和事件消息来通知您操作成功以及操作失败.一部分错 ...
- eclipse工具的使用心得
一.eclipse工具的使用 eclipse是一个开源的IDE,进行javaEE开发一般使用myeclipse插件比较方便 1. java代码的位置 1)选择工作空间workspace 选择一个文件夹 ...
- Linux 系统故障排查和修复技巧
Linux 系统故障排查和修复技巧 我发现Linux系统在启动过程中会出现一些故障,导致系统无法正常启动,我在这里写了几个应用单用户模式.GRUB命令操作.Linux救援模式的故障修复案例帮助大家了解 ...
- Linux系统故障排查和修复技巧
本文转自:http://os.51cto.com/art/201304/388384.htm 我发现Linux系统在启动过程中会出现一些故障,导致系统无法正常启动,我在这里写了几个应用单用户模式.GR ...
- javaweb笔记全套
Lesson 1 一.eclipse工具的使用 1. java代码的位置 1) 选择工作空间 workspace 选择一个文件夹存放程序(代码) 不要用中文和空格 2) 新建一个java 工程(Pr ...
- javaweb笔记分享
Lesson 1 一.eclipse工具的使用 1. java代码的位置 1) 选择工作空间 workspace 选择一个文件夹存放程序(代码) 不要用中文和空格 2) 新建一个java 工程(Pr ...
- HDFS介绍~超详细
HDFS(Hadoop Distributed File System) (1) HDFS--Hadoop分布式文件存储系统 源自于Google的GFS论文,HDFS是GFS的克隆版 HDFS ...
随机推荐
- NEFU 1142 表哥的面包
表哥的面包 Problem:1142 Time Limit:1000ms Memory Limit:65535K Description 可爱的表哥遇到了一个问题,有一个长为N(1≤N≤10^18)的 ...
- C语言字符串处理
一. C语言中,为什么字符串可以赋值给字符指针变量 char *p,a='5';p=&a; //显然是正确的,p="abcd"; ...
- input框颜色修该
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Cookie的使用与实现记住用户名案例
学习web开发,使用Cookie是不可避免的,个人感觉Cookie的使用和ASP.NET中的Session非常像,只不过Cookie是保存在客户端,而Session是在服务器端,两者都以记录信息为目的 ...
- HttpClient实现客户端与服务器的通信
本篇主要讲解了利用HttpClient实现 windows主机与linux服务器的通信与传递数据 HttpClient代码,服务器端配置 系统和安装软件 1)ubuntu 14.04 64位系统 2) ...
- iOS开发网络篇—JSON介绍
一.什么是JSON JSON是一种轻量级的数据格式,一般用于数据交互 服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外) JSON的格式很像OC中的字典和数组 {" ...
- 14、Silverlight 滤镜到 UWP 滤镜的移植(二)
上一篇文章 大致介绍了,移植戴震军大哥的 Windows Phone7 中,对于高斯模糊滤镜的移植,主要是 int[] 数组和 byte[] 数组的互相转换.同样的思路,只要把前文的方法封装一下,就能 ...
- Python读写文件乱码问题
对开发者来说,最恼人的问题之一莫过于读写文件的时候,由于编码千差万别,出现乱码问题.好难快速解决啊... 最近我也遇到了这样的问题,经研究,把大致的解决思路拿出来共享. 1. python中习惯首先声 ...
- VMware 虚拟机网络 组网问题
1.VMware虚拟机组网概述 整个结构: 需要确定的内容: 1) 虚拟机连接到哪个VMnet(交换机)? 2) VMnet(交换机)的组网模式? 首先,讲一下VMware的界面内容 安装好VMwar ...
- Hark的数据结构与算法练习之圈排序
算法说明 圈排序是选择排序的一种.其实感觉和快排有一点点像,但根本不同之处就是丫的移动的是当前数字,而不像快排一样移动的是其它数字.根据比较移动到不需要移动时,就代表一圈结束.最终要进行n-1圈的比较 ...