cornerstone xcode svn 初使用

1.配置svn服务端

2.cornerstone连接svn服务器

 

3.初始化项目

a.新建的项目

在目录下用xcode新建项目

b.已有项目上传 终端手动上传

    • 打开终端,并进入到项目目录

      cd $HOME/IOS/Projects
    • 把项目添加到svn上

      svn import-m "New Import"MyProject/ https://myserver.me.com/svn/trunk/MyProject  如:Marbury$ svn import -m "/Users/Marbury/Downloads/dbll\ 3\ 2 " http://192.168.1.129:80/svn/dbll/trunk

cornerstone3.0.3版本就直接可以用format1.8格式上传.a的静态文件

注意忽略文件

checkout 可以用xcode也可以用cornerstone

 

iOS开发 svn 命令行

转载2015-09-20 01:59:11

1. 打开 终端

2. cd  <你的项目 本地全路径> 

3. svn 命令行

----------------------------------------------------------------------------------------------------------------------​

1、初始化项目

svn import /Users/cress/本地项目目录  https://server/项目目录 -m "Initial import"

2、下载项目

svn checkout https://server/项目目录

3、添加文件

svn add test.txt

4、提交添加的文件,或者本地做的修改提交到服务器端

svn commit -m "add test.txt by test"

5、删除项目中的相应内容

    svn delete https://server/项目目录/文件名称 -m "delete test.txt for test"

    svn delete /Users/cress/本地项目目录 -m "delete test.txt for test"

6、更新最新版本

svn update

svn update -r 200 test.txt    (更新指定的版本)

7、查看本地修改的文件状态

svn status

8、单纯导出一个干净的项目内容(项目内容不带有svn隐藏记录信息)

svn export https://server/项目目录

9、加锁/解锁

svn lock /Users/cress/本地项目目录(或文件名)-m "批注"

svn unlock /Users/cress/本地项目目录(或文件名)

10、查看日志

svn log test.txt

11、比较差异

svn diff -r m:n test.txt  (对版本m和版本n比较差异)

12、合并两个版本

svn merge -r 12:14 text.txt  (把版本12和14之间的差异合并到当前的文件中)

13、svn帮助

svn help

svn help commit

14、冲突合并

svn resolve --accept working test.txt

14、恢复本地修改

svn revert [-R] something

something可以是(目录或文件的)相对路径也可以是绝对路径。

当something为单个文件时,直接svn revert something就行了;当something为目录时,需要加上参数-R(Recursive,递归),否则只会将something这个目录的改动。

14.2 回滚到指定的版本

svn update -r 回滚到的版本号  如:svn update -r 2113

提交回滚

svn ci -m “注释”  如:svn ci -m "添加模块协调者之前的标签"

14.3 复制一个项目

svn copy 原地址 目标地址

如:svn copy http://58.249.55.68:8091/product/MicroAPP/02-iPhone/02-code/03-Tag/MicroAPP-v3.1.1-2112-20140630 http://58.249.55.68:8091/product/MicroAPP/02-iPhone/02-code/02-Branch/MicroAPP-v3.1.1-2112-20140630 -m "添加模块协调者的分支"

15、代码库URL变更

svn switch   (切换分支)

svn switch --relocate [path]  (切换资源库)

switch用于在同一个版本库内不同分支之间的切换

relocate用于版本库访问地址变更时,重新定位版本库

比如,由于SVN服务器更换到另一台主机上,这是SVN服务器的地址改变了,那么各客户端就无法连接SVN服务器了,这时各客户端就需要执行relocate,将本地工作区的连接到新的服务器上去

而如果同一个版本库内,如果有多个分支,比如你现在正在trunk上开发,但需要切换到某个分支上开发,那么你可以用switch来进行这个切换操作,这时SVN会比较trunk和这个分支之间的差异,将差异部分传送到你的本地工作区,而不用将整个分支传送给你,从而避免巨量数据的传输。switch操作之后,你所进行的update、commit操作都变成了针对那个分支,当你在分支上的工作完成后,还可以再次switch回trunk。

switch还有另外一些用途,比如希望让分支中的某个文件夹保持和trunk同步,因为有人正在trunk的这个文件夹中进行开发,在分支中想用到开发的最新成果,那么就可以在分支的这个文件夹上设置swtich到trunk,这时update整个分支的话,就会把trunk上的这个文件夹取下来了。但是,当然你如果修改了这个文件夹的内容,commit后也是提交到了主干而不是提交到了分支。

16、打标签

每达到一个里程碑都应该给代码打个标签。

打基线---就是打标签,只是加上文档等资料

标签的特点?

       只读

如何打标签?

        Versions工具不能打标签,要打标签就要使用命令终端,通过命令来输入。

       打标签其实就是执行复制:svn copy。

       svn copy 命令不是真正复制真实的文件,而是只是对各个文件做版本记录,

       不占多大的服务器空间。

        svn copy 命令格式:

        svn copy 源URL  目的URL  -m “注释”

12、打分支

什么时候该打分支?

当主线项目需要添加一个新的功能,而这个功能需要开发比较长的时间。在新功能开发的这段时间内,主线的项目还需要继续修改Bug,发新版本。这种情况下,就需要另起个分支,用来开发新功能,而且不影响主线程的进度。

       分支开发注意的地方:

      1)主线尽量不要改变分支上要更改的文件

      2)分支尽量代码独立

如何打分支?

打分支和打标签是一样的,命令也是 svn copy,格式也是一样的。

14、合并代码

          在分支上开发代码完成后,就需要把分支的代码合并到主线程,有时特殊需要,也会把主线的代码合并到分支中。

         合并分支要注意的地方:

         1)要记录打分支时的版本号

         2)要记录每次合并代码的版本号

        如何合并代码?

例子:把分支的代码合并到主线中

        终端命令进入主线代码的跟目录,执行如下命令:

svn merge –r 打分支时版本号或者上次合并的版本号:HEAD 分支URL

posted @ 2017-02-23 11:16  糖糖的IOS  阅读(1310)  评论(0编辑  收藏  举报