mac下svn怎么checkout
1、Xcode4苹自带SVN软件------>Organizer------>Repositories
2、SVN checkout本删除本file服务器影响
影响服务器执行svn updatezai再自载;删除再执行svn commit服务器应删除
3、连接服务器
点击file-》repositories-》点击坐边+-》名字及svn服务器址type选subversionnext等等
4、Xcode4,SVN用命令
Commit 提交
checkout 服务器载本(我使用电脑)
update 更新文件
File------->SourceController------->update
第3按钮,视图比按钮
5、SVN用详解注意事项
①提交自代码
SVN更新原则要及更新及提交完功能能够通编译并且并且自测试尽量早提交保存历史版本必要候滚;始工作前update项目
②保持原提交(要经意间修改并提交别文件)
仅提交修改部要整项目提交;
完功能或文件提交我遇完某功能没提交做更改结代码现bug恢复代码
③要提交自文件
VisualStudio等发工具程产自文件suo等配置文件Debug,Release,Obj等编译文件及其些自同编译代码关文件些文件提交候应该签入签入需要仓库删除
④要提交能通编译代码
代码提交前首先要确认自能够本编译进行SVN提交更新代码提交前已经通自测试
SVN用命令详解
1、文件checkout本目录
svn checkout path(path服务器目录)
例:svn checkout svn://19216811/pro/domain
2、往版本库添加新文件
svn add file
例:svn add testphp(添加testphp)
3、删除文件
svn delete path -m delete test fle
例:svn delete svn://19216811/pro/domain/testphp -m delete testfile
4、查看志
svn log path
5、比较差异
svn diff path(修改文件与基础版本比较)
6、两版本间差异合并前文件
svn merge -r m:n path
SVN使用
更新(update)经update没坏处特别项目每提交(commit)前进行更新(update)新版本svn提示前拷贝期需要更新
提交(commit)定要写提交内容摘要便于查阅
文件checkout本目录
svn checkout path(path服务器目录)
svn update命令自用服务器版本替换本版本控制文件
6、Xcode使用SVN问题及提交解决冲突问题
XcodeSVN功能Eclipsesubclipse或者windowstortoiseSVN比较起功能差
我索性用直接用命令行我看朋友用subclipse其实挺使用SVN功能要单独耗费资源Eclipse
论使用SVN工具都遇Xcode固问题即projectpbxproj文件提交冲突问题
projectpbxproj文件面包含构建程所需所文件项目目录增加新文件比没通Xcode该文件projectpbxproj文件app同理SVN更新其项目员增加文件没更新projectpbxproj文件(或者该员根本没提交文件)则现相同现象
项目员提交新projectpbxproj文件边没项目增加新文件直接svn update
7、Xcode更新代码项目文件打
若选择更新整项目经现冲突问题尤其projectpbxproj文件文件包含构建程所需所文件项目目录增加新文件没通Xcode
该文件projectpbxproj文件app同理SVN更新其项目员增加文件
没更新projectpbxproj文件(或者该员根本没提交文件)则现相同现象文件冲突直接导致项目文件打
解决更新代码打项目文件:
项目文件tobaccoxcodeproj打右键选择'显示包内容'看三文件projectpbxproj/usermodelv3/userpbxuser
其projectpbxproj三版本解决普通svn文件冲突解决冲突即
8、SVN 更新 提交 合并 区别
本文件没改服务器文件改候更新服务器取文件覆盖前文件
本文件改服务器文件没改更新文件
本文件改服务器文件改改部冲突合并文件本冲突提示文件冲突需要自手修改传服务器
讲解合并:
服务器本同文件(所谓同文件应该SVN相路径相同文件名相同文件由SVN留本信息决定)已经修改且修改部重合重叠
满足面条件候再更新SVN自合并
SVN奥妙处于别提交修改文件再提交允许提交滴
>>>>
<<<
面标记冲突区域冲突区域删除掉能提交
解决办1:
删掉没解决冲突文件面几文件名相同缀同文件
知道用SVN解决冲突简单办
文件改名字文件所目录更新服务器文件自修改部添加更新文件面提交
解决办2:
文件面点击右键SVN菜单应该编辑冲突按钮选择现窗口边服务器版本边自修改版本
9、xcode自带svn使用
1、代码 某文件面 M 标记表示该文件已修改需要 commit
(右键该文件 -> source control -> commit selected file)
2、代码 某文件面 A 标记表示该文件新添加已受SVN管理需要 commit
(右键该文件 -> source control -> commit selected file)
3、代码 某文件面 标记表示该文件新添加并且脱离SVN管理首先需要add commit
(右键该文件 -> source control -> Add该文件标记变 A commit)
mac 终端 svn 命令
1、将文件checkout到本地目录
svn checkout path(path是服务器上的目录)
例如:svn checkout svn://19216811/pro/domain
简写:svn co
2、往版本库中添加新的文件
svn add file
例如:svn add testphp(添加testphp)
svn add php(添加当前目录下所有的php文件)
3、将改动的文件提交到版本库
svn commit -m "LogMessage" [-N] [--no-unlock] PATH(如果选择了保持锁,就使用--no-unlock开关)
例如:svn commit -m "add test file for my test" testphp
简写:svn ci
4、加锁/解锁
svn lock -m "LockMessage" [--force] PATH
例如:svn lock -m "lock test file" testphp
svn unlock PATH
5、更新到某个版本
svn update -r m path
例如:
svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
svn update -r 200 testphp(将版本库中的文件testphp还原到版本200)
svn update testphp(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)
简写:svn up
6、查看文件或者目录状态
1)svn status path(目录下的文件和子目录的状态,正常状态不显示)
:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定
2)svn status -v path(显示文件和子目录状态)
第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。
注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的svn中保留了本地版本的原始拷贝。
简写:svn st
7、删除文件
svn delete path -m "delete test fle"
例如:svn delete svn://19216811/pro/domain/testphp -m "delete test file"
或者直接svn delete testphp 然后再svn ci -m 'delete test file‘,推荐使用这种
简写:svn (del, remove, rm)
8、查看日志
svn log path
例如:svn log testphp 显示这个文件的所有修改记录,及其版本号的变化
9、查看文件详细信息
svn info path
例如:svn info testphp
10、比较差异
svn diff path(将修改的文件与基础版本比较)
例如:svn diff testphp
svn diff -r m:n path(对版本m和版本n比较差异)
例如:svn diff -r 200:201 testphp
简写:svn di
11、将两个版本之间的差异合并到当前文件
svn merge -r m:n path
例如:svn merge -r 200:205 testphp(将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)
12、SVN 帮助
svn help
svn help ci
------------------------------------------------------------------------------
以上是常用命令,下面写几个不经常用的
------------------------------------------------------------------------------
13、版本库下的文件和目录列表
svn list path
显示path目录下的所有属于版本库的文件和目录
简写:svn ls
14、创建纳入版本控制下的新目录
svn mkdir: 创建纳入版本控制下的新目录。
用法: 1、mkdir PATH
2、mkdir URL
创建版本控制的目录。
1、每一个以工作副本 PATH 指定的目录,都会创建在本地端,并且加入新增
调度,以待下一次的提交。
2、每个以URL指定的目录,都会透过立即提交于仓库中创建。
在这两个情况下,所有的中间目录都必须事先存在。
15、恢复本地修改
svn revert: 恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。revert:
用法: revert PATH
注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复
被删除的目录
16、代码库URL变更
svn switch (sw): 更新工作副本至不同的URL。
用法: 1、switch URL [PATH]
2、switch --relocate FROM TO [PATH]
1、更新你的工作副本,映射到一个新的URL,其行为跟“svn update”很像,也会将
服务器上文件与本地文件合并。这是将工作副本对应到同一仓库中某个分支或者标记的
方法。
2、改写工作副本的URL元数据,以反映单纯的URL上的改变。当仓库的根URL变动
(比如方案名或是主机名称变动),但是工作副本仍旧对映到同一仓库的同一目录时使用
这个命令更新工作副本与仓库的对应关系。
17、解决冲突
svn resolved: 移除工作副本的目录或文件的“冲突”状态。
用法: resolved PATH
注意: 本子命令不会依语法来解决冲突或是移除冲突标记;它只是移除冲突的
相关文件,然后让 PATH 可以再次提交。
18、输出指定文件或URL的内容。
svn cat 目标[@版本]如果指定了版本,将从指定的版本开始查找。
svn cat -r PREV filename > filename (PREV 是上一版本,也可以写具体版本号,这样输出结果是可以提交的)
可以关联 我也是昨天才装的 不过图形化的不好找 都是命令行 有点不方便
安装直接打开终端输入下svn 然后下一步就可以了
操作的话 得熟悉下了
附上几条命令
从本地导入代码到服务器(第一次初始化导入)
svn import /Users/apple/Documents/eclipse_workspace/weibo svn://localhost/mycode/weibo --username=mj --password=123 -m "初始化导入"
从服务器端下载代码到客户端本地
svn checkout svn://localhost/mycode --username=mj --password=123 /Users/apple/Documents/code
提交更改过的代码到服务器
1 cd/Users/apple/Documents/code
2 输入提交指令:svn commit -m "修改了mainm文件"
更新服务器端的代码到客户端
定位到客户端代码目录后,比如上面的/Users/apple/Documents/code目录,然后再输入指令:svn update
往版本库中添加新的文件 svn add file
提交 svn commit -m “message”
显示文件和子目录状态 svn status -v path
不再版本控制 M内容呗修改 c发生chongtu a:预定加入到版本库 k:被锁定
删除svn delete path -m “delete test file“
查看日志 svn log path
比较差异svn diff path(将修改的文件与基础版本比较)
1、首先我们需要在官网下载TortoiseSVN,双击下载的安装包即可进行安装操作。
2、与此同时,为了方便操作软件,我们可以在官网下载中文语言包。
3、在安装TortoiseSVN时涉及到同意授权等操作,只需要同意即可。
4、其余操作则遵循其默认选项,点击“next”不断确认等待安装即可。
5、在完成一系列操作之后点击“finish”确认即已经完成安装软件。
操作步骤:
1、下载最新版本的SVN客户端:可以直接到官网上下载
2、解压下载的文件,会自动生成对应的目录如 subversion-1710
3、编译与安装SVN,在终端中输入以下的命令:
cd ~/Downloads/subversion-1710 #进入子目录 后面的版本号显示当前的版本
#开始安装neon 这个可以支持HTTPS的连接
sh get-depssh neon
cd neon/
/configure --with-ssl
make
sudo make install #这里需要输入管理员的密码
cd
#通过 --with-neon 标识来安装支持HTTP的连接
/configure --prefix=/usr/local --with-neon
make
sudo make install
4、验证安装是否成功
在终端输入 svn --version
5、更新xcode4x中使用的SVN客户端
sudo -s #需要输入管理员密码
#以下命令可以直接复制到终端中执行
cd /Applications/Xcodeapp/Contents/Developer/usr/bin/ #进入xcode存放svn命令的子目录
mkdir bup #创建备份目录
mv svn bup/ #把旧的svn相关文件移动到备份目录
ln -s /usr/local/bin/svn / #把新的SVN文件复制到当前目录
新建项目
新建项目
添加Ignored
因为要提交到svn,那么肯定不能全部都提交,有些自动生成的就要忽略掉,所以需要添加Ignored
现在看Github的客户端和我们的项目对比,可以找出我们需要忽略的文件大概包含以下内容:
gradleideaimllocalpropertiesbuild
这时候就要去到Preferences里面了,具体如下图
操作我想一看图就很明白了,直接在Ignored Files选项里点击+号,在弹出的对话框选择第二项,然后依次输入上面包含的 gradle idea build 三个文件夹目录,再选择第一项,找到localproperties ,之后选择第三项输入iml 添加Ignored后显示如下图:
Share Project(Subversion)
接下来很显然了,该将项目和svn建立连接了,执行VCS->Import into Version Control->Share Project(Subversion)如果没有Share Project(Subversion)的选项,表示你的项目已经用了svn或者git管理了,那么可以先清除svn的信息之后再执行
点击Share Project之后会弹出选项卡,点击+来添加svn地址
添加地址之后,就可以选择一个地址然后share了
大概过几秒钟之后会弹出 下面的窗口,注意要选16,选了17之后可能有的同学会报错
然后点击OK之后会弹出你的SVN账号密码选项卡
继续点击OK,大概几秒钟后项目连上SVN了,注意此时项目代码并没有提交到svn上
如图,**的表示忽略的项目,然后点击VCS ↑ 弹出提交的对话框
右边要勾选 Auto-update after commit,否则的话你只提交了本地没有同步上传到远程服务器,到时候还得点击下图第三个同步按钮,所以为了保证一步到位,请记得勾选Auto-update after commit
提交后会执行大概一分钟,这取决于你的网速;成功后会弹出如下图点击Commit或者Cancel关闭窗口,或者点击Review你可以查看远程服务器项目,现在你去看看svn上是否已经有了该项目了;
检出SVN项目
来检出上一步中提交到svn上的项目,回到启动界面(关闭所有项目),点击VCS下拉的Subversion选项:
点击后弹出
选择目录
设置选项
注意还是选16
点击ok后弹出正在检出
检出成功后会弹出如下弹出框,然后点Yes
就会进到项目中来,然后随便修改下项目,可以右键Subversion->Commit File提交了
0条评论