Git工具选择傻瓜教程,如果有道理,绝对不会教你通过命令行使用Git。今天教大家用sourceTree或者Tower等工具玩转Git(当然不限于这两个,其他的不推荐。)一旦你建好仓库,用Git进行代码版本管理,你首先要有一个仓库。仓库的选择一般根据公司的要求而定。现在有很多免费的代码托管网站。目前我在用两个gitlab(公司内部使用,只能通过内网访问),一个是家庭用的Git@OSC。当然国内还有一个CODING也很不错(CODING的IOS项目是开源的,写的有兴趣的同学可以去他们的网站找),选择你要使用的代码托管网站注册,我将使用Git@OSC进行演示1.新建仓库2.将自己创建的仓库clone到本地。打开下载并注册的sourceTree。点击+新建仓库,从URL中选择克隆目标路径,可自行设置。点击Clone后,本地仓库就会有GitDemo仓库。二、提交代码1、我们已经把hostedcode网站上的仓库clone到本地,但是现在仓库里没有项目。现在创建一个新项目(或使用现有项目)。新建工程2、点击打开我们新建的工程文件夹,选中并复制里面的所有文件。注意不要直接复制本项目的整个文件夹,点击打开选择中复制的内容#p#3.然后打开我们刚刚创建的仓库文件夹,将我们复制的内容粘贴到仓库中。我们在创建新仓库的第二步clone到本地。忘记了可以查一下。4.然后用sourceTree打开我们的GitDemo仓库,我们刚才复制到仓库里面的内容已经在临时文件的区域了。Git代码管理的所有操作的第一步总是要将代码提交到本地,但是有些东西是不需要提交的,所以在将代码提交到本地仓库之前,我们需要通过gitignore进行设置。方法是点击上图中的设置,选择高级配置gitignore文件,点击编辑,然后复制我下面贴出的内容(测试过的gitignore)。关于gitignore在这里我不会过多解释。有兴趣的可以搜索build/*.pbxuser!default.pbxuser*.mode1v3!default.mode1v3*.mode2v3!default.mode2v3*.perspectivev3!default.perspectivev3xcuserdata*.xccheckout*.moved-asideDerivedData*.hmap*.Ripa*.xcuserstatecontents.xcworkspacedataproject.xcworkspaceUserInterfaceState.xcuserstateproject.xcworkspace/xcuserdata/UserInterface.xcuserstate#CocoaPods##WerecommendagainstaddingthePodsdirectorytoyour.gitignore.However#youshouldjudgeforyourself,theprosandconsarementionedat:#http://guides.cocoapods.cocousing/susing.html#should-i-ignore-the-pods-directory-in-source-control#.DS_StorePodsPods/*粘贴进去,点击关闭然后点击确定点击上图填写临时文件的提交信息。单击提交到此步骤。我们已经将代码提交到本地仓库的master主分支。我们现在还没有建其他的分支,所以下一个master分支就是主分支。Branch,点击Push,成功将代码推送到OSChina的远程仓库。推送成功。以后每次push代码都要养成先pull的习惯。三个Git分支刚才讲了sourceTree的基本用法,下面我简单说一下分支的使用。Git分支学习请移步GitFlow。我们以develop分支为例(常用的分支,一般在这个分支上开发,master分支有固定的人维护)。点击上图中的分支选项,创建一个名为develop的分支。此时自动从master分支切换到develop分支。现在develop分支只在我们本地。当多人不能在这个分支上共同开发时,我们需要将它推送到远端,点击推送勾选你要推送的分支。一般来说,不查master,让一个人维护,需要合并的时候推给master。这时你的远端也多了一个develop分支。如果你不要这个分支了,想删除这个分支,首先要保证代码已经提交到本地仓库,然后双击你的master分支,切换到master分支,***点击sourceTree的branch选项删除分支,选择要删除的本地分支的远程分支然后合并分支图,点击GitFlow选项自己测试分支的使用。至于代码冲突,我的建议是提高更新频率,删除,添加操作***立即更新。当发生冲突时,也可以借助sourceTree来解决。这次没办法演示了,就先到这里吧。Git傻瓜教程到此结束,祝大家一切顺利。
