原文网址:http://it.zhaozhao.info/archives/60469

有一次笔者在开心项目准备尝试新的练习的时候,赫然注意到在选择档案存放位置的时候,下面有个Source Control 可以勾选,那么究竟这是什么东西,一瞬间就勾起了许多的好奇心。经过一番研究之后,原来还有"版本控制"这个概念。其实这个概念以笔者目前的理解,就是把每个阶段的构想完成之后,储存起来并留下批注与版本编号,假如日后有不同的想法,可以从某个合适的版本从新开始,省去许多麻烦。本篇文章只先针对简单的设定,还有使用方式做一个解说,笔者认为这个观念建立及使用的好,不仅可以增加效率,还可以帮助整理思路。那么以下就针对如何在Xcode 中使用Source control 做一个说明。

首先当然是开一个新的项目,在这里使用的是single view 这个样板,然后为项目命名,之后到了选择存放位置的时候,记得勾选Source Control。如果你发现他呈现灰色的状态,如下图,无法勾选,那就表示这个位置已经有建立版本控制了。

什么意思呢?在此先针对Xcode 的Source control 做一个简单的说明,Xcode 做版本控制是选择一个文件夹,在这个文件夹里面的档案,都会受到版本监控。因此,笔者对于每一个正式的项目,都会建立一个它专属的文件夹,方便对这个项目做监控,而不会跟其他的项目产生混淆。

项目建立完成之后,就可以开始测试Source control 了。首先随便选一个档案,笔者选择初始画面的实作档,并在程序代码内加入一段批注,如下图。

然后就能做版本控制的测试了。首先对实作档点右键,选择"Source control"->"Commit Selected Files",如下图。

会出现以下画面,左侧是你目前的程序代码状态,又测试你在上一次执行commit 时的状态。是不是清楚明了呢。而下方的空白处,就是让你针对这次的commit 做描述的。打完叙述之后,就可以点下commit 完成这次版本的储存了。

之后笔者改变这段批注。随后又后悔了,因此想回到上次的某个版本。怎么办呢,很简单,只要点选右上角的Edit 栏里最右边那个,就会切换到像上图一样的画面。按下两边程序代码中间的时钟按钮,就会出现时间轴,如下图。左右的页面都可以选择时间轴的位置。左边就是改变了的批注,右侧就是某个时间点做commit 当时的批注。

接着将时间轴缩起来,改变的地方中间会有个按钮,如下图,左键点击之后,出现"Discard Change"这个选项, 点下去之后,目前的程序代码就会回到跟右边一样了。

上述只是很简单的版本控制,其中还有许多强大的功能可以使用,本篇文章只先针对基本的使用方法做介绍,更深入的方法,就静待各位去发掘,有所收获时,也请不要吝情跟笔者分享。

【转】使用XCODE 的SOURCE CONTROL 做版本控制 (1)的更多相关文章

  1. 使用XCODE 的SOURCE CONTROL 做版本控制 (1)

    http://it.zhaozhao.info/archives/60469   这是一篇关于 开发者在修改代码中非常常用的一个功能: 应用场景: 当你将代码该的面目全非,还不如从其那,这时候又想回到 ...

  2. 在xcode5下利用Source Control 做 git 项目管理

    xcode5做了很大的更新,其中一点非常实用的功能是集成了Source control项目管理,而且和git做了完美的结合:非常实用: 使用: 在新建项目时,选择 下面的 Create a git r ...

  3. Xcode使用source control 时提示the server certificate failed to verify 的解决办法

    wusipingdeMacBook-Pro:~ railgun$ wusipingdeMacBook-Pro:~ railgun$ svn ls https://13.13.13.134:8443/s ...

  4. How To Use Git Source Control with Xcode in iOS 6

    This tutorial is by Malek Trabelsi, a passionate iOS developer from Tunisia focused primarily on mob ...

  5. 在UE4中使用SVN作为source control工具

    ==========预先处理 1.到这个目录下 2.鼠标在空白处 按住shift键 同时右键 会多出一个 可以打开的cmd 3.输入命令,修改红线部分. me: 登陆svn地址的用户名, URL网址: ...

  6. Red Gate - SQL Source Control实现对SQL SERVER 的源代码控制

    原文地址:http://bbs.csdn.net/topics/350165431 SQL Server 一直没有一款很好的源码控制器,之前自己曾尝试自己写一个,将所有的 脚本 自动生成到某一目录下, ...

  7. Red Gate系列之二 SQL Source Control 3.0.13.4214 Edition 数据库版本控制器 完全破解+使用教程

    原文:Red Gate系列之二 SQL Source Control 3.0.13.4214 Edition 数据库版本控制器 完全破解+使用教程 Red Gate系列之二 SQL Source Co ...

  8. SQL Source Control for teams

    You'll use SQL Source Control differently depending on which development model you're using: 不同的模式有不 ...

  9. SQL Source Control

    https://documentation.red-gate.com/display/SOC5/SQL+Source+Control+5+documentation Working with migr ...

随机推荐

  1. "const wchar_t is incompatible with parameter of type "LPCSTR"

    MessageBox(NULL, L"TEST", L"TEST", MB_OK); You may get this error if you "U ...

  2. Head First 设计模式系列之一----模板模式(java版)

    开篇序言:四人帮的设计模式对于我这个菜鸟看着打瞌睡,后面果断买了一本head first的,感觉还可以像看报纸似的,花了一个寒假的晚上看了大半,确实内容也挺吸引人的,讲的很风趣.否则我也不可能,大过年 ...

  3. asp.net 获取当前项目路径

    方法一://获取当前项目的路径System.AppDomain.CurrentDomain.BaseDirectory.ToString();   // 得到的是当前项目的根目录取的值:F://Pro ...

  4. emctl start dbconsole OC4J_dbconsole*** not found

    C:\windows\system32>emctl start dbconsole OC4J Configuration issue. D:\app\product\\db_1/oc4j/j2e ...

  5. MVC5添加控制器总是报“Multiple object sets per type are not supported”

    http://www.asp.net/mvc/tutorials/mvc-5/introduction/creating-a-connection-string 按照上面的指导做练习,  总报小面的错 ...

  6. iOS多工程依赖

    导入准备工作 1.建立一个Framework & Library->Cocoa Touch Static Library 取名A,并在A里新建一个类用来测试 2.建立一个demo工程B ...

  7. ExtJS4加载FormPanel数据的几种方式

    我们做web应用最多的就是处理表单,extjs为我们提供了很多处理表单的功能,很多初学者疑惑怎么加载表单数据,到底能用什么方式加载?本文中,我将我自己实验过的进行一下总结,自己备忘,也希望能帮助到其他 ...

  8. nodejs child process

    //Create child processvar thread = require('child_process'); var msg = thread.fork(__dirname + '/chi ...

  9. Python的库和资源(转)

    Python的库和资源: http://blog.sina.com.cn/s/blog_3cb6a78c0100hpaq.html Python 常用模块: http://www.pythonclub ...

  10. 关于Spring运用过程中jar包报错问题

    使用Spring进行web开发时,第一步就是导入jar包,今天使用SPring Task开发定时器时,导入了好多次jar包,都是报错,不知道是因为jar包版本不同还是因为需要依赖的jar包没加入,反正 ...