- 浏览: 51513 次
- 性别:
- 来自: 北京
最新评论
VSS介绍和备份技巧
- 博客分类:
- JAVA
VSS 的全称为 Visual Source Safe 。作为 Microsoft Visual Studio 的一名成员,它主要任务就是负责项目文件的管理,几乎可以适用任何软件项目。
源代码版本控制机制是现代软件开发中必不可少的管理机制之一,通常借助版本控制软件即Source Code Management(SCM) systems或者Version Control systems来实现。版本控制在软件开发中的重要作用如下:
1)作为代码仓库有效的管理软件开发中各个不同版本的源代码和文档,占用空间小并且方便各个版本代码和文档的获取。
2)对开发小组中对源代码的访问进行有效的协调(不同的版本控制软件采取不同的协调策略)。
常用的版本控制软件有Clearcase, CVS, PVCS和Microsoft公司的Visual SourceSafe (VSS)。下面对Windows平台开发最常用的Visual SourceSafe 6.0进行简单介绍。
运行环境
Windows平台下使用VSS开发的典型环境是基于C/S架构的,即开发小组的每个开发者在各自的Windows平台下利用开发工具(比如VC)开发项目中的各个模块,而配有专门的服务器集中控制开发过程中的文档和代码。服务器和开发人员的客户机分别装有VSS的服务器和客户端程序。
安装
VSS6.0服务器的安装
第一步,将Visual Studio6.0的CD1放入CD-ROM,自动进入安装程序,选择第二项“Server Applications and Tools(Add Only)”;
第二步,然后在“Server Setups”的“Server Components”中选择“Visua l Source Safe Server”,按“Install”按钮后,根据提示放入CD2;
第三步,根据Installation Wizard的提示,继续安装过程,选择安装路径,直至提示你重启以使新安装的程序生效,重启计算机。
VSS6.0客户端的安装
在VSS6.0服务器安装完毕后,就可以在VSS管理员的指导下安装客户端的软件。由于我们是在一个Windows环境的子网内,每台PC客户机均可通过网上邻居来访问VSS服务器。在VSS管理员为用户指明VSS客户端软件的安装程序“Netsetup.exe”的位置(VSS服务器安装目录内)后,用户可以直接通过资源管理器“Explorer”在网上邻居中找到该程序,并双击以运行它。 Netsetup.exe被启动后进入VSS客户端的安装,在提示框中输入用户名和工作组名,选择VSS的安装路径后,点击安装图标,进入实际安装步骤,以后的工作将由系统自动完成。
使用说明
VSS使用过程中要遵循的是lock-modify-unlock流程而不是 copy-modify-merge流程(比如CVS),即开发人员首先将自己要修改源代码和文档从VSS服务器主备份文件上checkout到本地同时锁定服务器上的源代码和文档(multi - checkout情况除外),修改完成后checkout到服务器上同时解除服务器上文件的锁定。服务器集中控制所有的源程序和文档。
VSS使用中涉及到的概念
1) 项目(project),所谓的项目是一组存在VSS中的文件(任何类型),可以在项目中或是项目之间进行文件的添加、删除、编辑和共享。一个项目与操作系统的文件夹有很多的相似之处,但它更好地支持文件合并、历史和版本控制。所有的文件存在VSS数据库的项目中,开发组成员不能在VSS中的服务器主备份文件上工作(除了检查和版本比对等特殊情况外)而是VSS为每个成员在各自的工作目录(workfolder)下提供一个拷贝以供工作。尽管在没有工作目录的情况下也可以查看某个文件,但如要真正在VSS管理下工作,就必须要创建一个工作目录。
2) 工作目录(workfolder)是用户真正对项目文件进行调试修改的地方,当用户checkout文件时,VSS将就将文件拷贝到用户的工作目录下,当用户修改了该文件并将其checkin时,VSS再将它从用户的工作目录拷回到VSS 的数据库中。在用户作checkout时,VSS将会自动管理他的工作目录,诸如创建必要的子目录。而且工作目录可以随时创建或修改。
3) 版本跟踪。VSS提供版本控制和历史服务,而且老版本程序和文档能够被重新得到以便进行bug跟踪或其他目的。VSS用日期/时间戳来记录文件是何时被checkout或是何时被修改的,它主要有三种方法来跟踪文件和项目的版本:
版本号:这是由VSS维护的内部数码,用户对它没有控制权。每个文件和项目的每个版本都有一个版本号,这些版本号总是一个整数且是递增的。
标签(label):这些是用户赋给某个项目或文件的某个版本的一个字符串,可以是任何格式的长度不超过31字符的字符串。推荐使用。
日期/时间戳:它给出了一个文件何时最后被修改的信息,或者是一个文件何时被checkin。VSS同时支持 12小时和24小时的时间格式。
VSS6.0服务器的配置和管理
在VSS6.0服务器安装完毕后,就可以针对开发项目进行VSS服务器的配置和管理,这些工作均需由VSS管理员来完成。
第一步,为整个项目创建一个VSS数据库(在VSS服务器安装时,系统已经创建了一个缺省数据库Common),启动Visual SourceSafe6.0 Admin(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Visual Sou rceSafe6.0 Admin),跳出对话窗口,点击下拉菜单Tools中的Create Database ...菜单项,将出现对话窗口,选择新数据库的路径,例如创建MyApp数据库,然后点击OK按钮,系统将完成创建工作。
第二步,为新创建的数据库(例如MyApp)建立用户,首先需要打开该数据库,点击下拉菜单Users/Open SourceSafe Database...,然后选择数据库MyApp并打开。再选择菜单项Add User...,输入用户名和口令。然后依次创建其他的用户。可以为不同的用户设置针对不同项目文件夹的不同存取权限,存在两种方法:1)使用VSS提供的功能。选中Tools/Options…对话框中Porject Security属性页的Enable Project Security复选框并选择Tools/Rights by Project…或者Tools/Rights Assignments for User…进行设置;2)使用windows操作系统的cacls命令。
第三步,在该新建的数据库中创建项目Project。启动Microsoft Visual SourceSafe6.0(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Microsoft Visual SourceSafe6.0),出现对话窗口,点击下拉菜单File中Open SourceSafe Database...,跳出对话框,选择一个数据库(例如MyApp),双击它或按Open按钮打开该数据库;一个项目Project是一组相关的文档或者是一个文件的集合,VSS允许你以任何的层次结构来存贮和组织你的项目。在VSS数据库中,你可以创建一个或者多个项目。点击菜单File中的命令Create Project...,创建一个项目,例如MyProject;创建完项目MyProject后,需要向MyProject中添加文件,点击File中Add Files命令,将跳出对话框,选择相应文件或目录,点击Add按钮,将它们添加到MyProject中去。
至此VSS服务器的配置到此基本上已经完成了,创建了数据库和项目,并为它们建立了相应的用户,这样用户在客户端就可以直接登录到VSS服务器上,进行在VSS控制管理下的开发工作。
注意:关于服务器主备份文件的目录结构应该在项目开发前确定并征得全体开发人员得同意。实际使用过程中,如果发生服务器主备份文件目录结构不合理或者需要临时增加删除一些文件的情况,VSS管理员有责任集中进行处理。
VSS6.0客户端的使用
下面以实验室数据仓库项目具体实例说明VSS客户端使用步骤。
第一步,登录到VSS服务器。启动Microsoft Visual SourceSafe6.0客户端(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Microsoft Visual SourceSafe6.0),出现如下登录窗口;
点击Browse…按钮,出现下面对话框;
再点击Browse…按钮,选择下图所示的目录(DBGROUP服务器上的共享目录,如提示输入DBGROUP服务器帐号密码则分别填写vss/vss);
单击打开按钮并在随后出现的两个对话框上单击OK和Open;
重新回到登录对话框;
输入管理员指定的用户名和密码,即登录到了VSS服务器上。
注意:不同得用户和密码设置对不同目录(project)有不同的访问权限。
第二步,如果是第一次登录到VSS服务器,还需要先设定工作目录,否则无法进行checkout操作。
工作目录的设定如下图所示,选中自己相关模块的文件夹,单击右键,选择Set Working Folder…;
在弹出的对话框中选择自己所设定的工作目录并单击OK;
注意:工作目录设定完成后,服务器上的文件checkout后均放到该工作目录中,所以本地机器上的工作目录应收到保护不能随意删除移动。
第三步,checkout文件到本地工作目录中。选中相关的文件夹,单击右键并选择Check Out…;
系统弹出checkout对话框如下,单击OK后该目录下所有文件和子文件夹即checkout到了本地工作目录同时服务器上的文件被锁定呈红色,其他用户不可以再checkout该文件夹(服务器设置为不允许multicheckout)。
注意:一定要选中Recursive复选框以保证所有子文件夹被checkout。
第四步,对本地工作目录当中的文件进行修改调试。
第五步,将工作目录中的文件checkin。如果不将修改后的文件checkin则第四步中对文件的修改无法反映到服务器上项目文件的主备份中,而且极有可能导致下次checkout后本地文件被旧版本文件覆盖的情况。在VSS客户端窗口中选中要checkin的文件夹单击右键选择Check in…,弹出checkin对话框,单击OK则本地工作目录中的文件checkin到了服务器上同时服务器上的文件解除锁定(变黑)。
注意:一定要选中Recursive复选框以保证所有子文件夹被checkin。
建议1
在实际使用过程中,开发人员或者管理员有责任对服务器上的源程序和文档定期或不定期的做相应Label,以方便源程序和文档历史版本的管理。VSS可以方便的根据Label获取各个历史版本(有其他获取历史版本的方式,本文推荐使用Label方法)。
添加Label。选中要添加Label的目录(project)单击右键选中Label…;
设置Label对话框中填入Label名称和相关Comment,如下图所示;
如果要获取某一历史版本,选中相应的目录(project)并选择Show History…,如下图所示选择相应复选框并单击OK;
VSS弹出下面对话框,其中列出了所有管理员所作的Label,选中相应的Label,然后单击Get按钮则做Label的相应版本就会checkout到本地工作目录中。其他按钮的使用参见帮助;
建议2
开发人员请不要随意变更VSS服务器上的目录(project)结构,不要在目录(project)中随便增加删除文件,不要随便访问他人目录(project)及文件。如服务器上目录(project)结构确实需要变化请与管理员联系。
建议3
严格遵守VSS的使用规程,防止因误操作导致程序或者文档的丢失。如遇两人需同时修改统一目录(project)或文件的情况,请串行处理而非multicheckout方式处理以减少出错几率。
****************************************************************
VSS的每日自动备份
小弟在项目中兼职担当配置管理员,备份VSS的重任当然也得我来扛着,不然兄弟们加班加点的劳动果实可能因为什么天灾人祸一不小心就挂了。
以往备份VSS的频率是一月一次,近来受到上面的教导,备份频率较少,需要每日备份。难道小弟我需要每日坚持到加班的最后一刻,然后再全部get最新,再压缩文件,再传到服务器上去吗?现在的项目很大了,备份一次真是费时不少。
作为一个老程序员肯定不能干这种重复的手工劳动,得想个办法,偷一下懒。网上找了一圈,codeproject.com上找到了一篇讲这个的文章。理解之后,做成了以下的bat文件:
@ECHO OFF
@TITLE Backing up source safe databases
SET VSS_Install_Path="D:\Program Files\Microsoft Visual Studio\VSS\win32\"
SET VSS_DB="\\Server\Vss_DB_Path\Vss_DB_Name"
SET Bak_File="e:\%DATE%_Backup.ssa"
SET VSS_Admin_Name="admin"
SET VSS_Admin_Password="Your Admin Password"
FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
%VSS_Install_Path%"ssarc" -d- -y%VSS_Admin_Name%,%VSS_Admin_Password% -s%VSS_DB% %Bak_File% $/
@ECHO Finished backups
文件的解释
1 在实际项目中使用的话,需要修改文件中五个参数:
VSS_Install_Path :VSS的安装路径
VSS_DB :需要备份的VSS DB的路径
Bak_File :备份文件的输出地址
VSS_Admin_Name :VSS DB管理员的用户名
VSS_Admin_Password :VSS DB管理员的密码
2 “FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k”
设置一个获取当前日期的变量,用于每日备份的文件名
3 “%VSS_Install_Path%"ssarc" -d- -y%VSS_Admin_Name%,%VSS_Admin_Password% -s%VSS_DB% %Bak_File% $/”
BAT文件的核心:使用了VSS安装路径下的 ssarc.exe 这个实用的工具来备份指定的VSS DB.
每日工作的配置
1 进入备份服务器
2 开始——程序——附件——系统工具——任务计划——添加任务计划
3 选择保存的我们做成的VSS备份的bat文件,设置执行频率为“每日”,时间可设置为凌晨1、2点钟,那时大家应该都下班了吧。
4 OK!大功告成,不用管备份的事情了。不过一定得把备份服务器的硬盘弄大一点,项目大了的话,备份文件还是挺大的,小心撑爆硬盘,过了保质期后,可以手动废掉一些过期的备份文件。
--------------------------------------
vss备份,使用批处理,每次只能备份当前打开的项目,怎么才能备份所有的项目呢
批处理如下(已调试通过):
@echo off
@title 备份ProjectVss项目组SourceSafe数据库
rem SsPath 指定了SourceSafe安装目录下的 win32 目录的路径
set SsPath = "E:\Program Files\Microsoft Visual SourceSafe\"
rem BakPath指定了备份文件存放的路径
set BakPath ="J:\vssbak\"
rem iniPath指定了Vss安装时的Data路径
set iniPath ="E:\vssmanage\"
rem 备份日志
SET baklog="J:\vssbak\ProjectVSS_Bak(%DATE%).txt"
rem 备份文件名
SET bakfile="J:\vssbak\ProjectVSS_Bak(%DATE%).ssa"
rem vss管理员用户名
SET VSS_Admin_Name="admin"
rem vss管理员密码
SET VSS_Admin_Password=""
rem admin为管理员帐号,password为admin的密码
"%SsPath%ssarc.exe" -d- -s " %iniPath% " -i-Y -y%VSS_Admin_Name%,%VSS_Admin_Password% -o@"%baklog% " "%bakfile%" $/
if errorlevel 1 (
echo 备份失败
) ELSE (
echo 备份完成
)
把批处理文件设置为每日任务即可。
1。备份脚本
ECHO ====================== 开始 ========================
SET VSS_INSTALL_PATH=D:\VSS\
SET VSS_DB=E:\VSS\
SET BACKUP_FILE="e:\VSSBackup\%DATE%_%TIME%_Backup.ssa"
SET VSS_ADMIN_NAME=admin
SET VSS_ADMIN_PASSWORD=xxxx
FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
FOR /F "tokens=1-2 delims=: " %%i IN ('time /t') DO SET TIME=%%i_%%j
%VSS_INSTALL_PATH%"ssarc.exe" -d- -i- -y%VSS_ADMIN_NAME%,%VSS_ADMIN_PASSWORD% -s%VSS_DB% %BACKUP_FILE% $/
if errorlevel 1 (
ECHO 备份失败
) else (
ECHO 备份成功
)
ECHO ====================== 结束 ========================
2。计划任务设置脚本
@ECHO OFF
@TITLE VSS自动备份任务设置
schtasks /create /RU system /SC DAILY /ST 12:00:00 /TN "VSS自动备份任务" /TR "cmd /c d:\vss\backup.bat >> d:\VSS\backup.log"
使用>>符号可以将每次备份的日志都记录到后面的日志文件中。
3。参考资料
http://blog.csdn.net/downmoon/archive/2006/08/21/1102679.aspx
VSS的每日自动备份
http://www.cnblogs.com/heekui/archive/2007/01/25/629972.aspx
让 sourceSafe 每天自动备份及修复 ( 适用于 vss6.0 和 vss2005) @ECHO OFF
@TITLE VSS自动备份
详细出处参考:http://www.itqun.net/content-detail/179811.html
源代码版本控制机制是现代软件开发中必不可少的管理机制之一,通常借助版本控制软件即Source Code Management(SCM) systems或者Version Control systems来实现。版本控制在软件开发中的重要作用如下:
1)作为代码仓库有效的管理软件开发中各个不同版本的源代码和文档,占用空间小并且方便各个版本代码和文档的获取。
2)对开发小组中对源代码的访问进行有效的协调(不同的版本控制软件采取不同的协调策略)。
常用的版本控制软件有Clearcase, CVS, PVCS和Microsoft公司的Visual SourceSafe (VSS)。下面对Windows平台开发最常用的Visual SourceSafe 6.0进行简单介绍。
运行环境
Windows平台下使用VSS开发的典型环境是基于C/S架构的,即开发小组的每个开发者在各自的Windows平台下利用开发工具(比如VC)开发项目中的各个模块,而配有专门的服务器集中控制开发过程中的文档和代码。服务器和开发人员的客户机分别装有VSS的服务器和客户端程序。
安装
VSS6.0服务器的安装
第一步,将Visual Studio6.0的CD1放入CD-ROM,自动进入安装程序,选择第二项“Server Applications and Tools(Add Only)”;
第二步,然后在“Server Setups”的“Server Components”中选择“Visua l Source Safe Server”,按“Install”按钮后,根据提示放入CD2;
第三步,根据Installation Wizard的提示,继续安装过程,选择安装路径,直至提示你重启以使新安装的程序生效,重启计算机。
VSS6.0客户端的安装
在VSS6.0服务器安装完毕后,就可以在VSS管理员的指导下安装客户端的软件。由于我们是在一个Windows环境的子网内,每台PC客户机均可通过网上邻居来访问VSS服务器。在VSS管理员为用户指明VSS客户端软件的安装程序“Netsetup.exe”的位置(VSS服务器安装目录内)后,用户可以直接通过资源管理器“Explorer”在网上邻居中找到该程序,并双击以运行它。 Netsetup.exe被启动后进入VSS客户端的安装,在提示框中输入用户名和工作组名,选择VSS的安装路径后,点击安装图标,进入实际安装步骤,以后的工作将由系统自动完成。
使用说明
VSS使用过程中要遵循的是lock-modify-unlock流程而不是 copy-modify-merge流程(比如CVS),即开发人员首先将自己要修改源代码和文档从VSS服务器主备份文件上checkout到本地同时锁定服务器上的源代码和文档(multi - checkout情况除外),修改完成后checkout到服务器上同时解除服务器上文件的锁定。服务器集中控制所有的源程序和文档。
VSS使用中涉及到的概念
1) 项目(project),所谓的项目是一组存在VSS中的文件(任何类型),可以在项目中或是项目之间进行文件的添加、删除、编辑和共享。一个项目与操作系统的文件夹有很多的相似之处,但它更好地支持文件合并、历史和版本控制。所有的文件存在VSS数据库的项目中,开发组成员不能在VSS中的服务器主备份文件上工作(除了检查和版本比对等特殊情况外)而是VSS为每个成员在各自的工作目录(workfolder)下提供一个拷贝以供工作。尽管在没有工作目录的情况下也可以查看某个文件,但如要真正在VSS管理下工作,就必须要创建一个工作目录。
2) 工作目录(workfolder)是用户真正对项目文件进行调试修改的地方,当用户checkout文件时,VSS将就将文件拷贝到用户的工作目录下,当用户修改了该文件并将其checkin时,VSS再将它从用户的工作目录拷回到VSS 的数据库中。在用户作checkout时,VSS将会自动管理他的工作目录,诸如创建必要的子目录。而且工作目录可以随时创建或修改。
3) 版本跟踪。VSS提供版本控制和历史服务,而且老版本程序和文档能够被重新得到以便进行bug跟踪或其他目的。VSS用日期/时间戳来记录文件是何时被checkout或是何时被修改的,它主要有三种方法来跟踪文件和项目的版本:
版本号:这是由VSS维护的内部数码,用户对它没有控制权。每个文件和项目的每个版本都有一个版本号,这些版本号总是一个整数且是递增的。
标签(label):这些是用户赋给某个项目或文件的某个版本的一个字符串,可以是任何格式的长度不超过31字符的字符串。推荐使用。
日期/时间戳:它给出了一个文件何时最后被修改的信息,或者是一个文件何时被checkin。VSS同时支持 12小时和24小时的时间格式。
VSS6.0服务器的配置和管理
在VSS6.0服务器安装完毕后,就可以针对开发项目进行VSS服务器的配置和管理,这些工作均需由VSS管理员来完成。
第一步,为整个项目创建一个VSS数据库(在VSS服务器安装时,系统已经创建了一个缺省数据库Common),启动Visual SourceSafe6.0 Admin(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Visual Sou rceSafe6.0 Admin),跳出对话窗口,点击下拉菜单Tools中的Create Database ...菜单项,将出现对话窗口,选择新数据库的路径,例如创建MyApp数据库,然后点击OK按钮,系统将完成创建工作。
第二步,为新创建的数据库(例如MyApp)建立用户,首先需要打开该数据库,点击下拉菜单Users/Open SourceSafe Database...,然后选择数据库MyApp并打开。再选择菜单项Add User...,输入用户名和口令。然后依次创建其他的用户。可以为不同的用户设置针对不同项目文件夹的不同存取权限,存在两种方法:1)使用VSS提供的功能。选中Tools/Options…对话框中Porject Security属性页的Enable Project Security复选框并选择Tools/Rights by Project…或者Tools/Rights Assignments for User…进行设置;2)使用windows操作系统的cacls命令。
第三步,在该新建的数据库中创建项目Project。启动Microsoft Visual SourceSafe6.0(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Microsoft Visual SourceSafe6.0),出现对话窗口,点击下拉菜单File中Open SourceSafe Database...,跳出对话框,选择一个数据库(例如MyApp),双击它或按Open按钮打开该数据库;一个项目Project是一组相关的文档或者是一个文件的集合,VSS允许你以任何的层次结构来存贮和组织你的项目。在VSS数据库中,你可以创建一个或者多个项目。点击菜单File中的命令Create Project...,创建一个项目,例如MyProject;创建完项目MyProject后,需要向MyProject中添加文件,点击File中Add Files命令,将跳出对话框,选择相应文件或目录,点击Add按钮,将它们添加到MyProject中去。
至此VSS服务器的配置到此基本上已经完成了,创建了数据库和项目,并为它们建立了相应的用户,这样用户在客户端就可以直接登录到VSS服务器上,进行在VSS控制管理下的开发工作。
注意:关于服务器主备份文件的目录结构应该在项目开发前确定并征得全体开发人员得同意。实际使用过程中,如果发生服务器主备份文件目录结构不合理或者需要临时增加删除一些文件的情况,VSS管理员有责任集中进行处理。
VSS6.0客户端的使用
下面以实验室数据仓库项目具体实例说明VSS客户端使用步骤。
第一步,登录到VSS服务器。启动Microsoft Visual SourceSafe6.0客户端(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Microsoft Visual SourceSafe6.0),出现如下登录窗口;
点击Browse…按钮,出现下面对话框;
再点击Browse…按钮,选择下图所示的目录(DBGROUP服务器上的共享目录,如提示输入DBGROUP服务器帐号密码则分别填写vss/vss);
单击打开按钮并在随后出现的两个对话框上单击OK和Open;
重新回到登录对话框;
输入管理员指定的用户名和密码,即登录到了VSS服务器上。
注意:不同得用户和密码设置对不同目录(project)有不同的访问权限。
第二步,如果是第一次登录到VSS服务器,还需要先设定工作目录,否则无法进行checkout操作。
工作目录的设定如下图所示,选中自己相关模块的文件夹,单击右键,选择Set Working Folder…;
在弹出的对话框中选择自己所设定的工作目录并单击OK;
注意:工作目录设定完成后,服务器上的文件checkout后均放到该工作目录中,所以本地机器上的工作目录应收到保护不能随意删除移动。
第三步,checkout文件到本地工作目录中。选中相关的文件夹,单击右键并选择Check Out…;
系统弹出checkout对话框如下,单击OK后该目录下所有文件和子文件夹即checkout到了本地工作目录同时服务器上的文件被锁定呈红色,其他用户不可以再checkout该文件夹(服务器设置为不允许multicheckout)。
注意:一定要选中Recursive复选框以保证所有子文件夹被checkout。
第四步,对本地工作目录当中的文件进行修改调试。
第五步,将工作目录中的文件checkin。如果不将修改后的文件checkin则第四步中对文件的修改无法反映到服务器上项目文件的主备份中,而且极有可能导致下次checkout后本地文件被旧版本文件覆盖的情况。在VSS客户端窗口中选中要checkin的文件夹单击右键选择Check in…,弹出checkin对话框,单击OK则本地工作目录中的文件checkin到了服务器上同时服务器上的文件解除锁定(变黑)。
注意:一定要选中Recursive复选框以保证所有子文件夹被checkin。
建议1
在实际使用过程中,开发人员或者管理员有责任对服务器上的源程序和文档定期或不定期的做相应Label,以方便源程序和文档历史版本的管理。VSS可以方便的根据Label获取各个历史版本(有其他获取历史版本的方式,本文推荐使用Label方法)。
添加Label。选中要添加Label的目录(project)单击右键选中Label…;
设置Label对话框中填入Label名称和相关Comment,如下图所示;
如果要获取某一历史版本,选中相应的目录(project)并选择Show History…,如下图所示选择相应复选框并单击OK;
VSS弹出下面对话框,其中列出了所有管理员所作的Label,选中相应的Label,然后单击Get按钮则做Label的相应版本就会checkout到本地工作目录中。其他按钮的使用参见帮助;
建议2
开发人员请不要随意变更VSS服务器上的目录(project)结构,不要在目录(project)中随便增加删除文件,不要随便访问他人目录(project)及文件。如服务器上目录(project)结构确实需要变化请与管理员联系。
建议3
严格遵守VSS的使用规程,防止因误操作导致程序或者文档的丢失。如遇两人需同时修改统一目录(project)或文件的情况,请串行处理而非multicheckout方式处理以减少出错几率。
****************************************************************
VSS的每日自动备份
小弟在项目中兼职担当配置管理员,备份VSS的重任当然也得我来扛着,不然兄弟们加班加点的劳动果实可能因为什么天灾人祸一不小心就挂了。
以往备份VSS的频率是一月一次,近来受到上面的教导,备份频率较少,需要每日备份。难道小弟我需要每日坚持到加班的最后一刻,然后再全部get最新,再压缩文件,再传到服务器上去吗?现在的项目很大了,备份一次真是费时不少。
作为一个老程序员肯定不能干这种重复的手工劳动,得想个办法,偷一下懒。网上找了一圈,codeproject.com上找到了一篇讲这个的文章。理解之后,做成了以下的bat文件:
@ECHO OFF
@TITLE Backing up source safe databases
SET VSS_Install_Path="D:\Program Files\Microsoft Visual Studio\VSS\win32\"
SET VSS_DB="\\Server\Vss_DB_Path\Vss_DB_Name"
SET Bak_File="e:\%DATE%_Backup.ssa"
SET VSS_Admin_Name="admin"
SET VSS_Admin_Password="Your Admin Password"
FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
%VSS_Install_Path%"ssarc" -d- -y%VSS_Admin_Name%,%VSS_Admin_Password% -s%VSS_DB% %Bak_File% $/
@ECHO Finished backups
文件的解释
1 在实际项目中使用的话,需要修改文件中五个参数:
VSS_Install_Path :VSS的安装路径
VSS_DB :需要备份的VSS DB的路径
Bak_File :备份文件的输出地址
VSS_Admin_Name :VSS DB管理员的用户名
VSS_Admin_Password :VSS DB管理员的密码
2 “FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k”
设置一个获取当前日期的变量,用于每日备份的文件名
3 “%VSS_Install_Path%"ssarc" -d- -y%VSS_Admin_Name%,%VSS_Admin_Password% -s%VSS_DB% %Bak_File% $/”
BAT文件的核心:使用了VSS安装路径下的 ssarc.exe 这个实用的工具来备份指定的VSS DB.
每日工作的配置
1 进入备份服务器
2 开始——程序——附件——系统工具——任务计划——添加任务计划
3 选择保存的我们做成的VSS备份的bat文件,设置执行频率为“每日”,时间可设置为凌晨1、2点钟,那时大家应该都下班了吧。
4 OK!大功告成,不用管备份的事情了。不过一定得把备份服务器的硬盘弄大一点,项目大了的话,备份文件还是挺大的,小心撑爆硬盘,过了保质期后,可以手动废掉一些过期的备份文件。
--------------------------------------
vss备份,使用批处理,每次只能备份当前打开的项目,怎么才能备份所有的项目呢
批处理如下(已调试通过):
@echo off
@title 备份ProjectVss项目组SourceSafe数据库
rem SsPath 指定了SourceSafe安装目录下的 win32 目录的路径
set SsPath = "E:\Program Files\Microsoft Visual SourceSafe\"
rem BakPath指定了备份文件存放的路径
set BakPath ="J:\vssbak\"
rem iniPath指定了Vss安装时的Data路径
set iniPath ="E:\vssmanage\"
rem 备份日志
SET baklog="J:\vssbak\ProjectVSS_Bak(%DATE%).txt"
rem 备份文件名
SET bakfile="J:\vssbak\ProjectVSS_Bak(%DATE%).ssa"
rem vss管理员用户名
SET VSS_Admin_Name="admin"
rem vss管理员密码
SET VSS_Admin_Password=""
rem admin为管理员帐号,password为admin的密码
"%SsPath%ssarc.exe" -d- -s " %iniPath% " -i-Y -y%VSS_Admin_Name%,%VSS_Admin_Password% -o@"%baklog% " "%bakfile%" $/
if errorlevel 1 (
echo 备份失败
) ELSE (
echo 备份完成
)
把批处理文件设置为每日任务即可。
1。备份脚本
ECHO ====================== 开始 ========================
SET VSS_INSTALL_PATH=D:\VSS\
SET VSS_DB=E:\VSS\
SET BACKUP_FILE="e:\VSSBackup\%DATE%_%TIME%_Backup.ssa"
SET VSS_ADMIN_NAME=admin
SET VSS_ADMIN_PASSWORD=xxxx
FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
FOR /F "tokens=1-2 delims=: " %%i IN ('time /t') DO SET TIME=%%i_%%j
%VSS_INSTALL_PATH%"ssarc.exe" -d- -i- -y%VSS_ADMIN_NAME%,%VSS_ADMIN_PASSWORD% -s%VSS_DB% %BACKUP_FILE% $/
if errorlevel 1 (
ECHO 备份失败
) else (
ECHO 备份成功
)
ECHO ====================== 结束 ========================
2。计划任务设置脚本
@ECHO OFF
@TITLE VSS自动备份任务设置
schtasks /create /RU system /SC DAILY /ST 12:00:00 /TN "VSS自动备份任务" /TR "cmd /c d:\vss\backup.bat >> d:\VSS\backup.log"
使用>>符号可以将每次备份的日志都记录到后面的日志文件中。
3。参考资料
http://blog.csdn.net/downmoon/archive/2006/08/21/1102679.aspx
VSS的每日自动备份
http://www.cnblogs.com/heekui/archive/2007/01/25/629972.aspx
让 sourceSafe 每天自动备份及修复 ( 适用于 vss6.0 和 vss2005) @ECHO OFF
@TITLE VSS自动备份
详细出处参考:http://www.itqun.net/content-detail/179811.html
发表评论
-
web前端优化
2014-07-21 18:16 633http://www.cnblogs.com/develope ... -
Java取得当前类的路径
2012-02-23 15:15 845一此不安全的做法: 1. new File(path),这个 ... -
SMTP 服务器要求安全连接或客户端未通过身份验证的各个解决方案
2011-10-18 11:21 4402转: SMTP 服务器要求安全连接或客户端未通过身份验证的各个 ... -
ExecutorService线程池
2011-10-10 14:10 927ExecutorService 建立多线程的步骤: 1。定义 ... -
CountDownLatch 的使用小例
2011-10-10 14:08 828CountDownLatch java.util.concur ... -
java正则表达式 过滤特殊字符的正则表达式
2011-09-24 09:30 972在网上找了好久也没找到个合适的正则表达式以过滤特殊字符;自己学 ... -
Java取得当前类的路径
2011-09-21 10:44 6931. new File(path),这个方法的路径到底在那里取 ... -
Eclipse europa 更新时 Error retrieving "feature.xml". [error in opening zip file]
2011-09-06 17:20 668Eclipse europa 更新时 Error retrie ... -
用java调用oracle存储过程总结
2011-08-04 23:45 6351、什么是存储过程。存 ... -
buffer 与cache 的区别
2011-08-04 23:27 775A buffer is something that has ... -
MVC与MVP简单对比
2011-08-01 21:14 817在Java平台,基于Spring等技术的MVC框架已经走向成熟 ... -
.从三层架构到MVC,MVP
2011-08-01 21:13 679从三层架构到MVC,MVP http ... -
多线程Java Socket编程示例
2011-08-01 21:09 728采用Java 5的ExecutorService来进行线程池的 ... -
Java基于Socket文件传输示例
2011-08-01 21:04 583最近需要进行网络传输大文件,于是对基于socket的文件传输作 ...
相关推荐
**Visual SourceSafe 2005 (VSS2005) 介绍** Visual SourceSafe 2005,简称VSS2005,是由Microsoft开发的一款版本控制系统,主要用于软件开发过程中的源代码管理。它允许团队成员协同工作,跟踪代码的修改历史,...
VSS,全称为Visual SourceSafe,是微软提供的一款版本控制系统,主要用于软件开发团队协作中对源代码和其他项目文件的管理。VSS可以帮助开发者追踪...记得定期查看VSS的帮助文档和教程,以获取最新的使用信息和技巧。
VSS2005之Administrator功能及技巧是一份由HongerChen编写的详细指南,旨在帮助VSS配置管理员更好地理解和掌握Visual SourceSafe 2005 (简称VSS) Administrator的各项功能及其使用技巧。该文档不仅适合初学者,对于...
本教程将详细讲解VSS的配置、管理和实用技巧,帮助你更好地掌握这款强大的工具。 一、VSS的基本概念 1. 项目(Project):在VSS中,项目是组织代码和资源的基本单位,通常对应于一个实际的开发项目。 2. 库...
本篇文章将详细介绍VSS的基本概念、主要功能、使用方法以及一些实用技巧。 一、VSS简介 VSS是Visual Studio系列工具的一部分,主要用于跟踪项目中的文件变化,管理不同开发者的代码版本,确保团队协作中的代码一致...
#### 三、VSS使用技巧 **3.1 用户权限管理** 当用户在VSS系统中遇到无法添加文件的问题时,可能是因为缺少相应的权限。可以通过以下步骤为用户分配权限: 1. 打开VSS管理工具。 2. 进入`Tools -> Options`。 3. ...
了解并实践这些编码规范和版本控制技巧,将有助于提升个人和团队的开发效率,确保项目的稳定性和可持续发展。然而,随着技术的更新,现代的开发者可能需要转向更强大、更灵活的版本控制系统,如Git,以适应快速变化...
以下是一些解决方法和VSS2005的使用技巧。 ### 集成VSS2005到VS2005 1. **检查安装**:首先确保你已经正确安装了VSS2005客户端。如果在“开始”菜单中找不到VSS的图标,可能需要重新安装或修复安装。 2. **安装...
本文档将详细介绍 VSS Explorer 的各项功能及使用技巧。 #### 1. File -> Open SourceSafe Database **功能说明**:此选项用于打开现有的 VSS 数据库或创建新的数据库连接。当用户首次启动 VSS Explorer 或者需要...
MS VSS V6,全称为Microsoft Visual SourceSafe 2005...然而,随着技术的发展,更现代的版本控制系统如Git已经逐渐取代了VSS,但了解并掌握VSS V6的运作原理和使用技巧,对于理解版本控制的基本概念仍然具有重要意义。
通过阅读“VSS使用指南.doc”,新手可以了解到如何从零开始搭建VSS环境,进行基本操作,并掌握一些高级特性和技巧。而“www.pudn.com.txt”可能是包含更多VSS相关资源的链接或进一步的说明,可以帮助用户深入学习。 ...
**三、VSS 6.0的使用技巧** 1. **备份与恢复**: 定期备份VSS数据库非常重要,以防数据丢失。VSS提供了备份工具,可以通过“工具”->“备份”来执行。如果需要恢复,使用“工具”->“恢复”功能。 2. **权限管理**: ...
三、Eclipse VSS插件的使用技巧: 1. **快捷键**:学习和使用Eclipse的快捷键可以大大提高工作效率,例如使用Alt+Shift+C打开变更集视图,Alt+Shift+V打开版本历史视图。 2. **版本对比**:通过右键菜单选择“比较...
VSS,全称为Visual SourceSafe,是微软提供的一款版本控制系统,尤其在早期的软件开发环境中广泛应用...尽管有新的替代品出现,但对于仍在使用VSS的团队来说,理解和掌握这款工具的使用技巧仍然是提高开发效率的关键。
本篇将深入探讨VSS2005的基础操作和高级技巧。 1. **VSS2005的基本概念** - **版本控制**: VSS2005的核心功能,通过记录文件的每次修改,使得团队成员可以查看历史版本,回滚到任何先前的状态。 - **工作副本**: ...
本文档“VSS使用心得TXT格式”是作者根据个人经验总结出的VSS使用技巧和关键操作,对于初学者来说是一份非常实用的指南。 一、VSS基本概念 1. 工作副本:每个开发人员在本地计算机上所拥有的项目文件拷贝,可以自由...
5. **备份与恢复**:VSS2005可以定期自动备份数据库,防止数据丢失,并支持手动恢复操作。 ### 使用VSS2005 1. **创建项目**:在VSS2005中新建一个项目,设定存储位置,然后添加需要版本控制的文件。 2. **添加用户...
在学习和实践这个过程时,文档“VSS入门及管理员密码丢失解决办法.xls”将提供更详细的步骤和注意事项,它可能包含了具体的操作截图、解密技巧和常见问题解答,对于理解并解决这个问题非常有帮助。务必仔细阅读并...
- **备份与工作文件夹**: VSS为每个用户提供工作文件夹备份,便于文件的编辑和查看。即使没有工作文件夹也可以查看文件,但无法编辑。 #### 五、VSS的版本控制功能 - **组内合作**: - 默认情况下,一次只允许一人...