全国统一客服热线:020-37684431
当前位置:首页 >宏光大学 > 图文课程 > 生产拆单图文 >

SVN基本使用教程

1.软件版本的说明
软件区分工厂端使用的SVN版本和门店端使用的安装版本,关于SVN版本和安装版本的不同,介绍如下:

1.1 SVN版本

1.更新软件都是有自己手动操作SVN Update更新的;
2.需要安装SVN安装包;
3.安装完SVN后,电脑桌面空白地方点右键,可以看到如下图框选命令,如果没有看到,即表示你的电脑没有安装SVN。

4.SVN版本一般需要有4个文件夹,如下图1或者如下图2。

##图库文件夹:【Resources】;
 **“图库文件夹”必须得到宏光公司通知后,才能进行更新,禁止私自更新。
##程序文件夹:【Rpublic】
 **“程序文件夹”必须得到宏光公司通知后,才能进行更新,禁止私自更新。
软件文件夹:【TYBSOFT2021】
 **“软件文件夹”根据项目自身的需要,可以自由更新。
 **“软件文件夹”根据项目名称不一样,文件夹名称也会不一样,本文这里讲解的【TYBSOFT2021】是宏光通用版的名称,你们项目的“软件文件夹”名称,具体以实际为准。
##万能工具包文件夹:【TYBBTOOL】
**如果你们使用了宏光公司的ERP管理软件,则“万能工具包文件夹”必须得到宏光公司通知后,才能进行更新,禁止私自更新。
**如果你们没有使用宏光公司的ERP管理软件,则“万能工具包文件夹”根据项目自身的需要,可以自由更新。

1.2安装版本

1.更新都是程序自动更新的,不需要人为操作。
2.项目实施完成后,宏光公司会把工厂SVN版本打包为安装版本,并发送软件下载地址给相关负责人。
3.安装版本都是通过下图安装界面直接安装软件的;


4.安装版本如果有更新,软件会自动更新,在下载更新包的过程中,在电脑桌面会有个悬浮的图标显示出来,如下图所示:


5.安装版本的更新,都是由工厂软件维护人跟宏光客服反馈需要更新,宏光公司才会进行安装版本的更新。 

2.SVN常用操作

2.1一般清理

1.在需要清理的文件夹空白地方点击右键,按下图选择“Clean up”。

 
在弹出的界面中,点击“OK”即可。

点击“OK”后,当弹出如下图“Cleanup has successfully”字样,则清理成功。

2.2强制清理
强制清理,会把软件目录下没有提交到SVN的文件全部清理,所以在强制清理前,请先确保你已经把数据都提交到SVN。
1.在需要清理的文件夹空白地方点击右键,按下图框选选择“Clean up”,如图。

 
在弹出的界面中,勾选下图框选的选项,然后点击“OK”即可。

 
点击“OK”后,当弹出如下图“Cleanup has successfully”字样,则清理成功。

 
2.3更新文件夹
1.为了避免在更新过程中出现问题,所以在更新之前,先通过“Clean up”清理需要更新的文件夹。
2.在需要更新的文件夹空白地方点击右键,选择“SVN Update”,等待更新完成。
 
3.   如图界面提示“Completed”即已经更新完成,点击“OK”即可。

备注:在更新过程中需要终止更新(原则上不建议人为中断更新),必须点击界面的“Cancel”按钮,禁止直接点击界面的按钮。

 
待程序出现如下图提示“User canceled”,然后点击“OK”。

 
然后再通过“Clean up”清理刚才的文件夹。

2.4更新文件

1.选中需要更新的文件,点击右键,选择“SVN Update”。如下图。

2.更新完后,点“OK”即可。

注意,需要更新的文件必须是本地正常状态的文件,即带有绿色打钩的图标的文件。否则无法进行更新,如下图是修改过的文件,是无法直接更新的。


2.5提交文件
注意:
ØØ提交文件必须要填写修改日志。
ØØ提交数据到SVN服务器时,一定确保本机的数据是最新版本,否则可能提交失败,或者造成版本冲突。
1. 在需要上传文件夹目录下点击右键,点击“SVN Commit”弹出下面的界面:


 
点击“OK”按钮后,弹出如下图的界面


2.6还原文件
此功能是将本地修改过的文件还原跟SVN服务器版本一致。
1.在文件夹空白处点击右键,选择“TortoiseSVN->Revert”,

勾选“select/deselect all”,将目录下所有修改过的文件全部恢复为SVN服务器版本,点击“OK”即可。(如果只还原一个,则不需要勾选“select/deselect all”,直接勾选你需要还原的文件即可。)

 
恢复完成后,点击“OK”。
 
 
2.7还原冲突文件
文件冲突,一般会产生跟冲突文件,文件名称比原文件多了r的文件,如图

1.   先把需要上传的文件备份一下,例如备份到桌面;
2.   在冲突的文件夹空白地方点击右键,选择“TortoiseSVN->Resolve”;


在弹出的界面中,勾选“select/deselect all”,点击“OK”,冲突的文件即可被删除。

 
3.在文件夹空白处点击右键,选择“TortoiseSVN->Revert”,

勾选“select/deselect all”,将目录下所有修改过的文件全部恢复为SVN服务器版本,点击“OK”即可。

 
4.再把之前备份好的文件重新覆盖回来,再进行其他操作;

2.8清除账号密码

在桌面空白地方点击右键,选择“TortoiseSVN->Settings”

 
在弹出来的界面左边目录树中选择“Saved Data”,点击右边“Clear all”按钮,然后点击“确定”即可。


2.9设置提交过滤类型
在桌面空白地方点击右键,选择“TortoiseSVN->Settings”

在弹出来的界面左边目录树中选择“General”,在右边的“Subversion”栏中填入过滤内容。

 
过滤内容:
*.dwl *.dwl2 *.bak *.ldb *.fas *.lsp *.vlx *.Scene.t *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo __pycache__ *.rej *~ #*# .#* .*.swp .DS_Store [Tt]humbs.db
 
请点击下载文件 链接下载过滤内容。
 
2.10下载
1.一般情况下需要下载的项目会有一个统一的存放位置(此位置需要预留300G硬盘空间),在本地电脑找到存放位置后,在空白地方单击鼠标右键,在弹出的界面中如下图选择。

2.在弹出的界面中,输入需要下载的项目的路径,然后点击“OK”。(此路径由宏光提供。)

3.如果是第一次下载此项目,则会弹出如下图界面,点击“Accept the certificate permanetly”。如果不是第1次下载此项目,则直接跳到第5点。

 
4.输入账号、密码,并勾选“Save authertication”,点击“OK”即可。(此帐号由宏光提供。)

 
5.在弹出的界面中,如下图,选中需要下载的文件夹(此例子中需要下载的文件夹为TYBSOFT2016),然后点击鼠标右键,选择“Checkout”。

 
在弹出的界面中如下图,“Checkout directory”为项目下载存放的路径,默认是第1步的位置路径。

需要在“下载路径”后添加下载地址的最后一级目录(此例子中需要下载的文件夹为TYBSOFT2016,则添加“\TYBSOFT2016”),如图,然后点击“OK”,即可开始下载。


 
2.11 SVN安装 
1.双击打开安装包:
 
2.点击“Next”。
 
 
3.选择接受条款,点击“Next”

4.按下图选择选项;

 
5.点击“Next”。

 
6.点击“Install”。
 
 
7.等待安装,安装完成后,点击“Finish”。
 
 

2.12 文件状态图标介绍
1. 正常状态图标:文件有个绿色的“√”

 
2. 修改状态图标:文件有个红色的“!”。
 
 
3. 冲突状态图标:文件有个黄色的“!”。

 
4. 新添文件图标:文件有个蓝色的“+”。

 
5. 未修改图标:文件有个蓝色的“?”。

3.SVN疑难解

3.1更新时提示“The sever sent a truncated HTTP response body”


原因:
从上图报错提示中,我们可以找到此次报错的关键词是“response body”(相应),出现此问题的原因是更新过程中和服务器连接中断。
解决办法:
以上图为例子讲述解决办法。
进入需要更新的SVN软件根目录,在文件夹空白地方,点击右键,选择“SVN Update”命令进行重新更新。

 

3.2更新时提示“Wraning! One or more files are in conflicted state”

 
原因:
从上图报错提示中,我们可以找到此次报错的关键词是“conflicted”(冲突),出现此问题的原因是你的本地目录修改了文件,其他同事也修改了这个文件,并且上传了,从而导致发生冲突。
解决办法:
以上图为例子讲述解决办法。
1. 进入需要更新的SVN软件根目录,可以看到发生冲突的文件夹“Publicdata”显示了一个感叹号的图标;(本例子冲突的文件夹为“Publicdata”,你在实际操作中是哪个文件夹冲突了,以实际为准。)
 
 
2. 在SVN软件根目录空白地方,点击右键,选择“TortoiseSVN-->Resolve”命令进行处理冲突文件;
 
 
3.在弹出的界面中,勾选“Select/deselect all”选项,然后点击【OK】;

 
4.等待SVN处理完冲突文件后即显示如下图,点击【OK】。(注意,正确处理完冲突文件后,窗口左下方是显示“Completed!”信息的。)
 
 
5. 在SVN软件根目录空白地方,点击右键,选择“TortoiseSVN-->Revert”命令进行还原文件;
 
 
6.在弹出的界面中,勾选“Select/deselect all”选项,然后点击【OK】;

 
7.等待SVN处理完还原文件后即显示如下图,点击【OK】。(注意,正确处理完冲突文件后,窗口左下方是显示“Completed!”信息的。)

 
8.在文件夹空白地方,点击右键,选择“SVN Update”命令进行重新更新。


3.3更新是提示“拒绝访问” 
 

原因:
从上图报错提示中,我们可以找到此次报错的关键词是“拒绝访问”,出现此问题的原因是更新之前没有关闭软件导致的。
解决办法:
以上图为例子讲述解决办法。
1. 打开你正在更新的SVN软件的根目录,在空白地方点击右键,选择“TortoiseSVN-->Clean Up”命令进行清理文件夹;

 
2. 在弹出的界面中勾选如下图框选的选项,然后点击【OK】;(注意,在清理文件夹之前,必须要确保你本地目录已经修改的数据问题已经全部提交到SVN服务器!!)


3.等待SVN自动清理文件夹,直到弹出清理成功的界面,如下图所示,点击【确定】。(清理的时间根据实际情况而定,部分比较大的文件夹清理的时间可能会比较长,)


4.在文件夹空白地方,点击右键,选择“SVN Update”命令进行重新更新;


5. 正确完成更新是如下图中所示,框选的地方不会出现红色或者黑色字体的提示,然后点击【OK】即可。

3.4更新时提示“Unexpected HTTP status 413 ‘Request Entity Too Large’on”

 
 
原因:
从上图报错提示中,我们可以找到此次报错的关键词是“Too Large”(太大),出现此问题的原因是太长时间没有更新软件,需要更新的文件太大导致。
解决办法:
以上图为例子讲述解决办法。
1. 进入更新报错的软件SVN目录,在文件夹空白地方,点击右键,选择“TortoiseSVN-->Clean Up”命令进行清理文件夹;

 
2.   在弹出的界面中勾选如下图框选的选项,然后点击【OK】;(注意,在清理文件夹之前,必须要确保你本地目录已经修改的数据问题已经全部提交到SVN服务器!!)

 
3.等待SVN自动清理文件夹,直到弹出清理成功的界面,如下图所示,点击【确定】。(清理的时间根据实际情况而定,部分比较大的文件夹清理的时间可能会比较长。)

 
4.   本例子中更新出错的文件夹是【Comm】,而【Comm】目录下有5个文件夹,需要分别进入这5个文件夹中进行重新更新,下面以进入【CommData】目录进行讲解。


5.   进入【CommData】文件夹,在文件夹空白地方,点击右键,选择“SVN Update”命令进行重新更新;


 
6.   如果在更新【CommData】文件夹时,还出现下图的这个“Too Large”的报错,则需要再进入【CommData】目录下的文件夹单独再更新,即需要进入【DoorWindow】、【Entity】、【EntityGroup】、【RoomElement】,按照本小点的第一点开始重新更新。

 
 

3.5更新或者上传文件时提示“Forbidden”

 
 
原因:
从上图报错提示中,我们可以找到此次报错的关键词是“Forbidden”(403禁止),出现此问题的原因是当前的账号没有权限。
解决办法:
1. 先清除本电脑的SVN账号记录,具体操作参考 清除账号密码。
2. 重新输入SVN账号和密码。每个项目都有两个SVN账号,权限分别是:只可以更新数据、可以更新和提交数据。不同的人员需要根据实际情况输入不同的账号:
##  如果需要输入“只可以更新数据”的SVN账号,则联系工厂软件负责人,由工厂软件负责人统一输入;
##  如果需要输入“可以更新和提交数据”的SVN账号,则由工厂软件发负责人联系宏光客服,由宏光客服统一输入;
 


3.6上传文件到SVN时提示“Aborting commit:remains in conflict” 
 

原因:
从上图报错提示中,我们可以找到此次报错的关键词是“conflict”(冲突),出现此问题的原因是在你上传文件之前,已经有其他同事上传了这个文件,从而导致发生冲突。
解决办法:
以上图为例子讲述解决办法。
1. 先将需要上传的文件备份好,例如拷贝到桌面;
2. 进入需要上传文件的目录,在文件夹空白地方,点击右键,选择“TortoiseSVN-->Clean Up”命令进行清理文件夹;
 
 
3. 在弹出的界面中勾选如下图框选的选项,然后点击【OK】;(注意,在清理文件夹之前,必须要确保你本地目录已经修改的数据问题已经全部提交到SVN服务器!!)
 
 
4.等待SVN自动清理文件夹,直到弹出清理成功的界面,如下图所示,点击【确定】。(清理的时间根据实际情况而定,部分比较大的文件夹清理的时间可能会比较长。)
 
 
5. 在文件夹空白地方,点击右键,选择“SVN Update”命令进行重新更新;

 
6. 将备份好的文件重新覆盖到需要上传的目录,然后在空白地方点击右键,点击“SVN Commit”重新提交文件。

清理时提示如下图错误,“Previous operation has not finished;run ‘cleanup’ if it was interupted Please execute the ‘cleanup’  command.”

 
 
原因:
从上图报错提示中,我们可以找到此次报错的关键词是“interupted”(打断),出现此问题的原因是清理或者使用SVN过程中部分文件损坏导致。
解决办法:
以上图为例子讲述解决办法。
1.点击下面链接,下载压缩文件:http://files-library.oss-cn-shenzhen.aliyuncs.com/Download/OtherPackage/Qita/sqlite3.rar
                          
2. 把下载好的压缩包文件拷贝到软件根目录,并选择“解压到当前文件夹”方式解压;

 
3. 解压后,会看到如下图框选的两个文件;
 
 
4. 鼠标双击打开“把这两个文件放到软件根目录 运行此文件 两次.bat”文件两次。

5.   打开两次后,在文件夹空白地方,点击右键,选择“TortoiseSVN-->Clean Up”命令进行清理文件夹;

 
6. 在弹出的界面中勾选如下图框选的选项,然后点击【OK】;(注意,在清理文件夹之前,必须要确保你本地目录已经修改的数据问题已经全部提交到SVN服务器!!)

 
7. 等待SVN自动清理文件夹,直到弹出清理成功的界面,如下图所示,点击【确定】。(清理的时间根据实际情况而定,部分比较大的文件夹清理的时间可能会比较长)
 
 
8.在文件夹空白地方,点击右键,选择“SVN Update”命令进行重新更新;

 

3.8清理目录时提示“Cleanup failed to process the following paths:  Can’t revert   without reverting children”
 
原因:
从上图报错提示中,我们可以找到此次报错的关键词是“without revering children”(还原子项),出现此问题的原因是本地文件夹出现冲突。
解决办法:
以上图为例子讲述解决办法。
1. 进入需要更新的SVN软件根目录,先把其他需要上传的文件全部上传到SVN;
2. 在SVN软件根目录,在文件夹空白地方,点击右键,选择“TortoiseSVN->Revert”,

 
3. 勾选“select/deselect all”,将目录下所有修改过的文件全部恢复为SVN服务器版本,点击“OK”即可。
 
 

4.在文件夹空白地方,点击右键,选择“SVN Update”命令进行重新更新。 
 

3.9更新目录时提示“Error: Checksum mismatch while updating”


 
原因:
从上图报错提示中,我们可以找到此次报错的关键词是“Checksum mismatch”(校验和不匹配)。
解决办法:
以上图为例子讲述解决办法。

1.根据实际报错的文件找到报错的目录,如上图,报错的目录是“I:\XIANGMUSOFT\2021版\BNSOFT2021\db”。
2.把下面的文件下载下来,拷贝到出现报错的目录,如这个例子报错的目录就是“I:\XIANGMUSOFT\2021版\BNSOFT2021\db”(运行前记得备份数据)修复SVN后运行.bat
3.双击打开上一步下载的文件即可。如果不能执行命令行,请参考上面的【2.11.SVN安装】的第4步,重新修改一下。
 
 

3.10安装SVN时提示如下图所示 The installer has encountered an unexpected error installing this package. 
 
 
解决办法:

1.打开“C:\Windows\System32”目录,找到“cmd.exe”文件,点击右键,以管理员方式运行;
 
 

2.输入命令:msiexec / package  D:\TortoiseSVN-1.8.10.26129-x64-svn-1.8.11.msimsiexec / package 命令后面接的是你的SVN安装包的路径,回车运行后就安装了。