在iOS开发, 涉及到多人协同开发的时候, 这个时候, 我们就得利用版本控制系统(例如GIT), 来合并和管理代码了, 今天我们来讲一下, 利用 SourceTree+oschina进行版本控制


先来灌点鸡汤:

版本控制的方式有2种, 分为GIT 和 SVN, 那么区别是什么呢, 简单说下, GIT(分布式) SVN(集中式)

那么什么是集中式, 什么是分布式呢: 看图

分布式的好处呢, 就是当前写完了代码, 提交到本地仓库后, 不用害怕丢失, 而且也可以做版本的记录, 如果将来有一天想找回几天前的代码, 也是可以的. 那么下面我们就来看看怎么玩吧!

第一步, 安装SourceTree

给种一枚: http://pan.baidu.com/s/1sjWOn9b

打开之后, 如果已经过期了的话, 那么直接Register Now 注册一下就可以了! (我这里略过_)

如果见到下面这个界面, 那就说明你的Source Tree 安装完成了!

第二步 去oschina申请远程仓库

给链接一枚: http://git.oschina.net



然后会给你注册时候的邮箱, 发送一个验证邮件, 注册一下

然后点击链接, 会跳转到主页

如果你是项目的创始人(小红), 那么你就点击项目(进行创建)

1. 第一步, 创建项目



2. 项目创建成功, 如下图

3. 因为我创建的私有项目(如果是私有项目, 则执行下面这步, 如果不是则略过下面这步(步骤3.x))

(3.1)点击右上角管理

(3.2)点击添加项目成员, 我这里另一个(小明)是lidongxu_work@126.com

这里说一下:

管理员: 最高权限
开发者: 可以上传或者克隆(下载)代码 (一般给予这个权限)
观察者: 只能下载, 无法上传
报告者: 只能看, 和评论, 什么也不能干!

(3.3)输入对方oschina邮箱账号, 然后给予权限

回到项目首页(注意是点你的项目, 例如我这里是a1209woshi)

4. 获取克隆的网址(给别人使用, 让别人可以用这个网址, 把对应的远程仓库东西克隆(下载)到本地)

我这里获取到的是 https://git.oschina.net/women2323/a1209woshi.git

5. 回到SourceTree, 新建本地仓库

填写克隆URL地址

如果是第一次使用SouceTree(并且是私人项目), 会弹出让你输入你的oschina账号和密码(小红)





6. 上传项目到远程仓库(供别人(小明)下载)

(6.1) 找到本地仓库文件夹(我的在桌面)

(6.2) 然后看工作区有变化, 然后把未暂存文件, 放入已暂存文件区中.



(6.3) 这里说一下, Git的工作原理图

(6.4) 然后commit(提交)到本地仓库分支中





(6.5) 养成一个好习惯, 先从远程仓库拉去一下, 然后在本地合并好了, 然后再推送回到远程仓库中, (也就是说, 合并代码是在本地进行的) (注: 如果你不拉取, 很容易把别人刚提交的代码, 顶掉)



(6.6) 回到网页上去看看, 刷新下, 会看到我刚传的项目

7. 别人如何拉取这个项目, 把HTTPS克隆网址给他(如果是私有项目, 请确定把对方oschina账号添加到你的项目中了)

(7.1) 同样, 从URL克隆(新建本地仓库)

(7.2) 然后填入克隆网址, 然后选择本地仓库位置

(7.3) 进入到工作区之后, 因为我是要克隆代码从远程仓库到本地, 所以直接点击拉取

(7.4) 你会惊奇的发现, 本地仓库里, 已经有了远程仓库的东西啦!!(以后再写好代码, 只需要执行第6步)就可以了, 这样就可以方便和别人进行团队协作开发了)

有错误还忘您指出,如果这篇文章帮助到您了,或者您有什么建议和补充,都可以留言告诉我哦!

[iOS]SourceTree+oschina实现代码远程托管的更多相关文章

  1. 【iOS技术】Xcode+GitHub远程代码托管(GIT, SVN)

    原创 2016-05-24 旭哥 蓝鸥 学生对旭哥的评价是这样的: 旭哥 为什么这么年轻 知识却比我们多这么多............ 旭哥很是负责,对同学的各种问题都能够热心地解答,在旭哥的带领下, ...

  2. iOS如何上传代码到Github

    iOS如何上传代码到Github 很多iOS开发者想开源自己的代码或者demo,开源到Github是个不错的选择,那么如何上传我们的代码到Github,令所有人可以下载使用呢?这里我们的目的很明确,就 ...

  3. 如何在sourcetree 下提交代码到gerrit上

    gerrit的审核机制决定了提交到远程到代码并非远程master分支,而是/refs/for/master 分支,所以需要解决怎么在sourcetree下提交代码到/refs/for/master分支 ...

  4. ios蓝牙开发(三)ios连接外设的代码实现:手机app去读写蓝牙设备。

    手机app去读写蓝牙设备....... 代码下载: 原文博客主提供Github代码连接,地址是:https://github.com/coolnameismy/demo ios连接外设的代码实现流程: ...

  5. iOS 蓝牙开发(二)iOS 连接外设的代码实现(转)

    转载自:http://www.cocoachina.com/ios/20150917/13456.html 原文作者:刘彦玮 上一篇文章介 绍了蓝牙的技术知识,这里我们具体说明一下中心模式的应用场景. ...

  6. iOS开发关于Block代码错误

    本文永久地址为http://www.cnblogs.com/ChenYilong/p/4052362.html ,转载请注明出处. iOS开发关于Block代码错误 Incompatible bloc ...

  7. iOS书摘之编写高质量iOS与OS X代码的52个有效方法

    来自<Effective Objective-C 2.0编写高质量iOS与OS X代码的52个有效方法>一书的摘要总结 一.熟悉Objective-C 了解Objective-C语言的起源 ...

  8. 使用SourceTree将bitbucket的远程仓库回滚到某一次提交-b

    目的: 使用SourceTree将bitbucket的远程仓库回滚到某一次提交. 原理: 在本地需要回滚的commit上创建一个分支,将该分支合并到远程仓库. 准备: 远程仓库有一个master主分支 ...

  9. iOS_SN_BlueTooth (二)iOS 连接外设的代码实现

    原文:http://www.cocoachina.com/ios/20150917/13456.html?utm_source=tuicool&utm_medium=referral 上一篇文 ...

随机推荐

  1. 自定义 tabBar (默认 tabBar 为可读不可写类型)

    KVC 方法 //由于 tabBar是只读 不能够直接操作,如果要修改  可以使用KVC let mainTabBar = MainTabBar() //KVC 赋值 setValue(mainTab ...

  2. 微软职位内部推荐-Senior Software Development Engineer H/F

    微软近期Open的职位: Microsoft Engineering Center Paris (Xbox Music et Video) : Ingénieur en développement l ...

  3. VS2013中如何更改主题颜色(深色)和恢复默认的窗口布局

    1.通常情况下,我们会根据个人爱好更改VS2013的主题颜色,一开始我喜欢白色,后来我偏爱深色. 依次选择:工具->选项->常规->主题->深色->确定,ok 2.我们在 ...

  4. 设置浮点数的显示精度&precision(0)

    /*    设置浮点数的显示精度    cout.precision(int)可以设置浮点数的显示精度(不包括小数点)        注: 1.如果设置的精度大于浮点数的位数,如果浮点数能根据IEEE ...

  5. vtune 不能查看pg的源代码

    在编译的时候,要加enable-debug 选项 并且如果之前有没有加的话,一定要make clean

  6. Teamwork——Week4 团队项目之NABC

    项目框架——NABC模型 一.N(Need需求) 我们组主要的用户对象是第三小组——UI小组的同学们,因此我们的用户需求就是他们的数据需求. 1)提供给UI小组整理好的数据库,和前一组讨论好数据结构. ...

  7. 网件无线网卡在windows 2012支持问题

    网件的无线网卡的驱动是支持windows 8.1的,但是安装了驱动后,却没法启动网卡.网上搜索后发现,service里面网件有一进程没法启动:而2012年忘记官方论坛技术支持答复咨询居然说,网件驱动不 ...

  8. AlarmManager使用注意事项

    在使用AlarmManager实现闹钟需要注意的是,intent和pendingintend的context如果是activity,那么当activity回收之后,context对象则不能被Alarm ...

  9. thinkPHP生成静态分页列表

    改造分页类Pagehtml.class.php <?php // 静态分页列表类 class Pagehtml extends Think { //分页url public $pageUrl; ...

  10. WinHex分析PE格式(2)&& 如何手动添加区段并运行区段

    由于这次文章内容比较多 所以写成DOC文档 为了复习所学的知识,我在原本的软件里试者手动加入区段 ,并写给大家分享,还试试者用LordPE加区段发现竟然失败了, 还是自己动手比较实在,完美运行. 利用 ...