Xcode中利用git源代码版本号控制
git是一个版本号控制系统,能够通过命令行来调用,也有专门的桌面软件。这里主要介绍在Xcode中怎样利用git来进行版本号的控制。
一、创建git源
从Xcode5開始引入了使用git的一些新特性。将git的各项功能整合到一个菜单中,而且提供子菜单来进行软件合并的控制。当用Xcode创建一个project时,会出现一个复选框即如图所看到的:
一般默认情况下是被选上的,假设不想使用git。能够把它取消掉。当创建完项目project后。打开项目project所在的目录。会发现一个.git子目录。这是在创建project时。勾选上上面复选框后Xcode为存储git源相关数据自己主动创建的。
假设看不到.git子目录,可能是文件被隐藏了,能够通过打开终端,输入命令:
defaults write com.apple.finder AppleShowAllFiles TRUE
来显示隐藏的文件;隐藏文件:defaults write com.apple.finder AppleShowAllFiles FALSE
当刚開始创建project时不勾选上图中复选框时,后面创建完project后能够通过终端命令行来生成git源:
终端打开project文件:cd /Users/YOUR-USERNAME/Desktop/NogitDemo ,同一时候在这条命令中设置MAC的username,
然后输入:git init,初始化一个空的源。这时.git文件夹已经被创建好,
接下来输入:git add,当前文件夹的全部内容被加入到源里去了。
最好:git commit -m 'Initial commit',这样git源就创建好了,Soure Control菜单就能够使用了
二、提交更改
在project中加入代码,这时候会在ViewController.m文件旁边。加入了一个M字母,如:
说明那个文件已经被改动,这时候点击Source Control>Commit菜单项,弹出例如以下窗体:
点击Commit 1 File文件就提交成功了,同一时候之前文件右边的M就会消失。
三、分支
在git中默认都会有一个分支,叫做master。单独的开发人员仅仅在master这个分支开发,这事实上不是一个好习惯。不管你是单打独斗还是组团合作,在对项目作出重大改变或加入重大功能时。使用分支是十分重要的。
创建一个分支。点击Source Control > GitDemo-master > New Brance…这个菜单,然后会弹出例如以下菜单:
输入分支名newBranch。点击Create就创建好了。
然后在这个新创建的分支里写入代码,不会影响到原来的Master分支,通过点击Source Control > GitDemo –AnotherBranch > Switch to Branch…菜单项能够进行分支切换。
在分支合并前。在newBranch里写入的代码不会同步到Master分支里去,不会影响之前稳定的版本号。
四、合并分支
首先,确保master分支是如今的活动分支。假设不是。要改过来:Source Control > GitDemo – AnotherBranch > Switch To Branch… menu,并从展示窗体选择master分支。
打开Source Control > GitDemo – master > Merge From Branch…菜单,进行分支的合并。当有多个开发者合并时,要注意后面合并时会出现报错情况,那是由于在合并时系统并非那么智能的识别到了须要合并的整个模块。所以合并后可能会出现报错的现象。
这是一个坑呀! !不知道哪位大神可有挽救的办法。。。
五、忽略更改
放弃不想要的代码更改功能很实用,当你在开发过程中发现出了大乱子,你想从上一个稳定状态又一次開始时,这个功能就派上用场啦。注意放弃更改这个功能没有回头路,点完之后你就没有办法再撤销这个操作了。
当你更改代码后,在提交(Commit)之前Discard All Changes和Discard Changes in “ViewController.m”...两个都能够点选,
提交(Commit)之后。Discard Changes in “ViewController.m”...会变成灰色,
Xcode中利用git源代码版本号控制的更多相关文章
- eclipse中使用git进行版本号控制
		
协作开发的时候没有版本号控制是非常痛苦的事情,使用git能够非常好的完毕这项任务,由于非常多的开源码都在github上公布,因此学会使用git是非常重要的一项技能. 这篇写的是在eclipse下使用的 ...
 - 在Xcode中使用Git进行源码版本控制
		
http://www.cocoachina.com/ios/20140524/8536.html 资讯 论坛 代码 工具 招聘 CVP 外快 博客new 登录| 注册 iOS开发 Swift Ap ...
 - 【转】在Xcode中使用Git进行源码版本控制 -- 不错
		
原文网址:http://www.cocoachina.com/ios/20140524/8536.html 本文翻译自Understanding Git Source Control in Xcode ...
 - Qt中利用QTime类来控制时间,这里简单介绍一下QTime的成员函数的用法:
		
Qt中利用QTime类来控制时间,这里简单介绍一下QTime的成员函数的用法: ------------------------------------------------------------ ...
 - AndroidStudio中利用git下载github或者git.oschina的代码时报错:repository test has failed解决方法
		
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 微博:http://weibo.com/mcxiaobing AndroidS ...
 - 在VS项目中通过GIT生成版本号作为编译版本号
		
上一篇博客写了如何在 .Net 项目使用 SVN 作为版本控制工具时生成与代码对应的组件版本号.虽然在公司一直使用 SVN ,但我却对 GIT 情有独钟(可能要归功于那段捣鼓 ROM 的时光),但少有 ...
 - Git(一):Git与版本号控制简单介绍
		
Intro 版本号控制系统是什么 版本号控制系统(Version Control System,VCS)能够帮助我们记录和跟踪项目中各文件内容的改动变化.它能够帮我们保存项目的各个版本号.以 ...
 - [翻译] USING GIT IN XCODE [5] 在XCODE中使用GIT[5]
		
USING GIT IN XCODE USING BRANCHES Branches can be a very effective tool to isolate new features or e ...
 - [翻译] USING GIT IN XCODE [1]  在XCODE中使用GIT[1]
		
USING GIT IN XCODE http://www.cimgf.com/2013/12/10/using-git-in-xcode/ Git has become a very popular ...
 
随机推荐
- php分布式缓存系统 Memcached 入门
			
Memcached 是一个分布式的缓存系统, 但是 Memcachd 到底是什么意思,有什么作用呢?缓存一般用来保存一些经常被存取的数据和资源(例如:浏览器会将访问过的网页会话缓存起来),因为通过缓存 ...
 - CentOS上安装分布式文件系统FastDFS & 配置和问题解决
			
原文:https://my.oschina.net/wangmengjun/blog/1142982 什么是FastDFS? FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件 ...
 - C/C++控制台输出时设置字体及背景颜色
			
1.改变整个控制台的颜色用 system("color 0A"); 其中color后面的0是背景色代号,A是前景色代号.各颜色代码如下: 0=黑色 1=蓝色 2=绿色 3=湖蓝色 ...
 - [Android Memory]   手动回收ImageVIew的图片资源
			
ImageView默认是不进行图片资源的回收的,需要我们自己在activity或者fragment中进行回收: public static void releaseImageViewResouce(I ...
 - iOS:CALayer核心动画层
			
CALayer:核心动画层 简介: Core Animation 是跨平台的,支持iOS环境和Mac OS X环境 学习核心动画之前,需要先理解CALayer,因为核心动画操作的对象不是UIView, ...
 - SQL注入深入剖析
			
SQL注入是一门很深的学问,也是一门很有技巧性的学问 1. 运算符的优先级介绍 2. SQL语句执行函数介绍 mysql_query() 仅对 SELECT,SHOW,EXPLAIN 或 DESC ...
 - LINUX之内网渗透提权
			
在渗透测试过程中,经常遇到如下情形,内部网络主机通过路由器或者安全设备做了访问控制,无法通过互联网直接访问本地开放的服务,Windows方 面,国内通常选择Lcx.exe来进行端口转发,在应用方面大多 ...
 - css Table布局:基于display:table的CSS布局
			
两种类型的表格布局 你有两种方式使用表格布局 -HTML Table(<table>标签)和CSS Table(display:table 等相关属性). HTML Table是指使用原生 ...
 - 解决html视频播放只有声音没有图像的办法
			
HTML5中并没有指定视频解码器,它留给了浏览器来决定. MP4有四种编码格式(MPEG4(DivX),MPEG4(Xvid),AVC(H264),HEVC(H265)): 只有使用AVC(H264) ...
 - IT词汇表
			
本人采集到了数十万篇中文技术类博客,进行分词后根据出现的词频手工整理了一份IT词汇表,共计12000个,基本囊括了常见的中英文IT词汇,欢迎各位提出交流意见. 点此 下载