就10-12使用技术SVN 源代码会引发哪些问题? 无法后悔:做错一个操作 版本备份:费控件,费时间 版本混乱:因版本备份太多造成混乱 代码冲突:多人操作同一文件
强烈建议 使用源代码管理工具
SVN集中式的版本控制 是CVS的接班人 速度比CVS快,功能比CVS多
且强大
在国内软件企业中使用最为普遍
GIT
一款伟大的分布式源代码管理工具
SVN基本配置
<1>找SVN的账号密码
<2>登陆SVN服务器 下载代码 checkout (就可以把代码仓库的代码下
载到我们的服务器里面)
<3>写好的代码上传到服务器 commit
<4>想拿到最新代码 执行update操作
checkout 是将服务器上的代码下载到本地(下载所有文件) 只要做
一次
commit是将本地修改之后的文件提交到服务器(只提交修改之后的) 每
天下班之前 commit一下更新的版本(可运行版本)
update是将我们服务器上的代码更新到本地(只会更新被修改的文
件) 每天上班之前update一次
<1>Repository( 仓库 ) checkout 从服务器下载到本地
如果报错 out of date 说明已经被别人改了
必须执行update操作 会将你更新的合并在一起
下载到服务器后开始编码
SVN策略 拷贝-修改-合并
还有其他方案 比较少用 拷贝 锁定 修改
checkout 锁起来 只能我修改 不能别人修改 不能并行开发
安装服务端
<1>服务器 用来存储客户端上传的源代码
可以在Windows上安装Visual SVN Server 傻瓜式操作 下一步下一步
大部分情况下 公司的开发人员不必亲自搭建SVN服务器
客户端
上传本地的源代码到服务器,或者更新服务器的代码到本地,保持同步
可以在Mac上使用命令行,Versions,Cornerstone
开发人员就属于客户端这个角色
想用操作服务器 命令行,第三方,XCode
搭建服务器,百度 Visual SVN SerVer服务器搭建 下载
Repositories 仓库
Users用户 添加用户
Groups分组
https有下载什么证书 把https改成http就行 SSL加密 只有证书才内访
问,保证数据的安全性,支付里用的比较多
https提供了身份验证和加密通讯方法, 需要申请,这一认证是付费 个人
1980 企业3980
https弹框子比较烦 可以改
如果是加密 点击VisualSVN Server 右键 点击Properties ->
Network 443 Use secure connection勾去掉
外网访问 我的电脑->计算机名
想利用SVN管理源代码,必须得有2套环境
服务器和客户端
如何学习命令行?
打开终端 ? 方式 其他->终端
学习新的指令 svn—help回车 / svn help 回车
add
commit
checkout
如果有时候 在终端输入指令没用 查看xcode,
点击xcode
偏好设置(最后一列)Locations
Command Line Tools: 选择当前安装的Xcode
# [中括号]中包含的内容是可选的
# (子命令缩写)
svn help checkout回车 查询指定怎么用
checkout URL[@REV]...[PATH]
编程思想是最重要的
学习命令行 cd代表切换目录 cd 直接鼠标拖过来(路径就出来了)
pwd 查看当前路径
cd../ 返回上一级
ls 查看当前文件夹下有哪些
ls -a
ls - G带颜色的
cd ls/如果字符是唯一的,敲回车会自动补全
创建文件 main.c 敲回车
cat main.c 查看文件
more main.c 分页查看
1>命令和参数之间 需要添加空格
2>如果要使用当前目录中的文件名,输入到一半时,按TAB键能补全
SVN客户端命令
svn checkout: 下载服务器的代码到本地 (简写 svn co)
svn commit: 将改动的文件提交到服务器(简写svn ci)
svn update 更新服务器的代码
先进入到指定目录
cd 托目录 敲回车
liang两种方法
pwd 查看地址
svn checkout 跟地址敲回车
输入当前电脑密码,输密码没有提示
UserName 登陆账号密码
第一次检出
进入经历文件夹
输入svc checkout指令
输入电脑密码
输入用户名
输入密码
检出成功
第二次检出
进入小涛文件夹
输入svn checkout指令
检出成功
只要输入过一次账号密码,终端会自动记录我们的密码
通过指定的账号密码检出
重置密码svn指令后加上— username
<1>一般初始化项目 项目经理来初始化
SVN的本质是通过一个文件夹来管理源代码
默认情况下,用来管理源代码的文件夹是隐藏的,这个隐藏文件夹的名称
叫.svn
1> 显示隐藏文件夹
# 显示隐藏文件
$ defaults write com.apple.finder
AppleShowAllFiles Yes && killall Finder
# 不显示隐藏文件
$ defaults write com.apple.finder
AppleShowAllFiles No && killall Finder
svn管理文件夹不要修改,不要管他
svn commit main.c提交文件到服务器
注意:新建文件或文件夹之后如果直接提交(直接comit)会报如下错误,提
示我们提交的文件没有纳入版本控制
使用终端,必须在使用的文件加下敲指定
提交一个新建的文件到服务器,需要2个步骤
报这个错误的时候,是没有写日志
添加日志信息
注意:在提交代码时,必须认真写上注释,否则会报如下错误
svn status 文件有没有入会
注意:svn add只会将文件添加到本地,不会添加到服务器
先写日志在commit
svn commit -m”初始化项目”.main.c
Xcode管理SVN
标记是用来标记稳定版本,分支是用来解决bug