• Subversion使用总结


    一、源代码管理工具的种类:

    1、CVS:始于90年,版本控制的开始工具鼻祖

    2、SVN(Subversion):集中式的版本管理控制工具

    3、GIT:分布式的版本管理控制工具

     

    二、SVN的基本操作:

    1、登录SVN服务器,使用账号和密码

    2、从SVN服务器代码仓库代码下载到电脑本地:

    checkout:下载所有文件到本地

    3、将自己写的代码提交到SVN服务器:

    commit:只提交修改之后的文件

    4、如果其他人想看自己的代码,可以从SVN服务器获取最新的代码:

    update:只会更新被修改的文件

    5、基本策略(SVN,CVS):

    拷贝(下载代码)-修改(修改代码)-合并(合并代码)

    6、其它策略(类似微软的VSS,不能进行并行开发):

    锁定(下载代码,锁住服务器)-修改(修改代码)-解锁(解锁后,其它人才可以从服务器下载代码)

    注意事项:每天上班之前,checkout,只需要做一次;每天下班之前,commit提交一次“可运行的版本”;想要往服务器提交代码,必须要保证本地的代码和服务器的一致,出现“out of date”,说明服务器的代码已经被别人修改过了,需要update一下。

    其它:

    1、经常更新

    2、提交前需要在本机测试通过

    3、提交时一定写备注(注释)

    4、对于不需要提交的文件不要提交到版本库

    5、每次修改之前最好更新

    6、每天下班之前提交当天运行通过的代码

    7、每天上班第一件事情更新前一天的代码

     

    三、服务器端的安装配置:

    1、服务器(存储客户端上传的源代码)

    使用工具:Visual SVN Server(只适用于Windows电脑)

    下载地址:

    https://www.visualsvn.com/server/download/

    2、客户端(上传本地的源代码到服务器,或者更新服务器的代码到本地,保持同步)

    使用工具:命定行,Versins,Cornerstone,Xcode

     

    四、客户端软件使用:

    1、使用命定行工具,拷贝服务器文件夹到电脑本地

    cd /Users/Desktop/SvnFolder/manager

    svn checkout http://192.168.15.155/svn/projectName

     

    cd /Users/Desktop/SvnFolder/zhangsan

    svn checkout http://192.168.15.155/svn/projectName

     

    cd /Users/Desktop/SvnFolder/lisi

    svn checkout http://192.168.15.155/svn/projectName

     

    cd /Users/Desktop/SvnFolder/wangwu

    svn checkout http://192.168.15.155/svn/projectName

     

    2、提交代码

    cd /Users/Desktop/SvnFolder/manager/projectName

    touch main.c

    open main.c

    svn state(查看状态)

    svn add main.c

    svn commit main.c -m “初始化项目”

     

    cd /Users/Desktop/SvnFolder/zhangsan/projectName

    svn update

     

    cd /Users/Desktop/SvnFolder/lisi/projectName

    svn update

     

    cd /Users/Desktop/SvnFolder/wangwu/projectName

    svn update

     

    3、执行返回到下载的版本号

    cd /Users/Desktop/SvnFolder/manager

    cd projectName/

    svn revert main.c

     

    4、执行返回到指定的版本号

    svn update -r 3

     

    5、执行查看所有的版本号

    svn log mian.c

     

    6、平时使用SVN的时候,会遇到两个常见的问题

    a.超时:先更新再提交,只有本地的版本号大于等于服务器的版本号,才能提交,否则会出现“out of date”问题。

    b.冲突:conflict discovers in(提示我们如何解决问题)

    三种情况:

    第一种、mine-conflict:代表用我们的代码替换服务器的代码,本地代码只保存我们的。

    第二种、theirs-conflict:代表用服务器的代码替换我们的代码,本地代码只保存服务器的。

    第三种、postpone:自己手动解决,本地文件中会同时保留服务器代码和本地代码。

    其它注意事项:

    .svn这个隐藏目录记录着非常关键的信息,不要去修改、删除这个隐藏目录和里面的文件,否则将会导致本地的工作副本被破坏,无法再进行操作

     

    五、Xcode管理SVN步骤:

    1、在Cornerstone中添加服务器manager

    2、创建Xcode工程

    3、选中服务器manager,点import(把工程导入到SVN服务器)

    4、填写日志信息

    5、Cornerstone中点击checkout下载代码到本地manager文件夹

    6、指定对应的开发人员,比如:peter,通过Xcode的checkout下载代码

    7、Xcode—>preferences—>accounts—>add reponsity—>填写SVN地址—>输入账户和密码

    8、Xcode—>SourceControl—>checkout—>repository(选择没有端口的地址)—>next—>保存工程位置

    9、Xcode—>添加.m文件中的代码—>Commit提交(userdata是用户缓存目录,断点信息,布局信息和打开文件信息)

    10、Xcode—>SourceControl—>Discard All Changes(没有提交之前反悔)

    11、Xcode—>SourceControl—>update出现冲突—>点击?问号—>四项选择(服务器在上我的代码在下面,使用我的代码,使用服务器的代码,我的在上服务器的代码在下面)—>Commit提交

    12、查看整个项目记录Xcode—>SourceControl—>History,查看单个文件记录Xcode—>Version editor—>Log

     

    六、SVN目录规范:

    trunk:主干,开发项目的主目录

    branches:分支,分支目录,非主线功能,发现发布版本后有BUG,拷贝一份到分支,然后在分支解决BUG,测试之后,可以合并到主干

    tag:标识符,标记目录,重大版本的备份

    操作流程:主干发布1.0版本—>并右键点击trunk文件夹,标记备份1.0版本—>发现1.0版本有BUG—>右键点击1.0文件夹,拷贝1.0版本到分支—>然后选择分支,工程中修改1.0版本BUG—>经理验证完毕,发布1.1版本—>并右键点击1.1版本,标记备份1.1版本—>然后合并1.1分支到主干

    注意事项:合并主干版本和修复的分支版本不成功,记住一定要删除userdata文件。如果下次出来显示?击右键,ignore忽略文件

  • 相关阅读:
    网页自动满屏
    页面字符编码不一致的处理
    数据库迁移:从SQL2005到SQL2008
    一条DELETE语句
    网站的最大并发连接数
    C#为网页生成缩略图
    在类中使用page对象用HttpContext.Current
    域名解析、子域名、cname别名指向、MX记录、泛域名与泛解析、域名绑定、域名转向
    C#数据库编程中SqlDataAdapter与DataSet的区别与联系
    gridview不能删除修改数据的问题
  • 原文地址:https://www.cnblogs.com/yuhao309/p/7267920.html
Copyright © 2020-2023  润新知