相信技术的力量

svn使用总结

客户端关联SVN仓库方式

方式一(本地空目录)

  1. 创建一个空文件夹,空白处右键 checkout,输入服务器仓库的URL
  2. 当checkout的文件夹下多了个.svn的文件夹时代表关联成功

方式二(本地有项目文件夹)

  1. 将客户端项目import到服务器仓库
  2. 删除本地文件
  3. 将刚才导入服务器的项目checkout检出到本地,完成关联

提交

  • 文件上有"?"图标时,代表服务器不知道该文件存在,右击 add,让该文件计划提交
  • commit提交,注意提交备注信息
  • 养成先update,再commit的习惯

误删恢复

  • 本地删除 ,恢复方法:SVN Update
  • 服务器删除 ,恢复方法:show log,revert to this version

版本冲突

* 当本地版本低于服务器的版本,就会出现提交的冲突,因此每次提交前,先从服务器更新最新版本到本地.

* 比如用户A提交,用户B编译代码后没有update,直接提交,就会产生冲突

* 冲突解决
edit conflicts 自己编辑冲突
resolve 让系统自动解决冲突(合并两者的代码,有点麻烦)

图标解释

1.绿色的对勾 : 首次关联仓库成功后,代码提交完成
2.蓝色?号: 服务器不识别该文件,新建的文件
3.蓝色+号: 计划将该文件提交到服务器的仓库
4.红色!号:文件修改了
5.黄色!号:产生冲突了。
6.灰色对勾: 只读文件,如果需要修改需要右击  get Lock
7.黄色小锁: 获取锁可以修改文件。其他用户不能再次获取锁来修改文件
8.灰色横杠: 被忽略,不提交服务器

锁操作

* 图片、视频、so、等不可被编辑的文件才使用锁,其他慎用。

* 锁只能锁住一个文件状态,如果该文件被修改了,锁自动就没了。

提交原则

  • 先update,后commit
  • 每完成一个小模块,每天下班前都需要提交
  • 禁止提交不能通过编译的代码
  • 每次提交必须书写明晰的标注
  • 不要提交自动生成的代码
  • 慎用锁定功能

其他注意事项

  • 提交时候提交的是一个目录,右键空白处选择提交,默认提交的是文件所在的整个目录
  • 永远不要去删除Server端的仓库,否则无法找回代
  • 谨慎使用还原,因为如果本地代码没有commit,那么还原后没有commit的代码将无法找回
  • 直接忽略的文件,直接显示横杠 ; 已提交过的文件,设置为忽略时,会先显示红叉,提交后,变为白色横杠
    • 由于是已经提交过的文件,所以设置为忽略时,显示红叉,表示计划从版本控制中删除,当提交后,就从服务器里删除了,然后成为忽略状态.如果一个文件没有提交过,直接设置为忽略,是显示不出红叉的.因为服务器里没有,不需要计划删除.

修改远程仓库url地址

TortoiseSVN->Relocate(重新定位),输入修改后的URL地址即可.

常见错误

Unable to connect to a repository at URL "https://..." Access to "/svn/..." forbidden

  1. 跟管理员确认自己是否拥有该仓库的访问权限
  2. 有权限的前提下依然存在此错误,则TortoiseSVN-->Settings-->Saved Data-->clear ,即可解决

SVN 图标不显示

svn图标不显示的解决方案 ,自己依靠第四种方法解决了问题.

⬆️