iOS 在Xcode中使用Git进行本地版本控制--本地篇

1.为工程添加本地仓库

新建工程时,在新建页面勾选创建本地仓库,

如果项目已经存在,则在Source Control->Create Git Repositories中创建

创建完之后,控制finder让其显示隐藏文件,在命令行输入显示隐藏文件并重启finder,可以看到项目中多了一个.git文件夹,所有的控制信息,数据都会存贮其内,Git仓库会管理你的程序版本以及跟踪代码的改变,可以将Git仓库看做一个所有版本的数据库。


//显示隐藏文件

defaults write com.apple.Finder AppleShowAllFiles true 

//重启finder

killall Finder 

//关闭显示隐藏文件

defaults write com.apple.Finder AppleShowAllFiles false

打开 Source Control navigator,点击展开列表,会看到Branches、Tags、Remotes三个文件,展开Branches,会看到一个分支master,点击master,你会看到一个系统初始化时自动提交的版本(注释为 Initial Commit)。


2.进行版本控制

在ViewController里,我们先改变一句log的代码试试,command+s保存后发现ViewController.m右边有个M标记,如图,M代表做出改变,但是还未保存到本地仓库。

未保存到本地仓库的代码,可以撤回全部修改,Source Control里选择Discard All Changes..是将所有的未保存的修改进行还原,还原之后M标记消失,修改的代码全部重返上个版本的情况。

如果你其他文件也做了修改,但是你只想还原某一个文件下的修改时, 你也可以使用Discard changes in 'ViewController.m'只还原该文件还未提交的修改。

- (void)viewDidLoad {
    [super viewDidLoad];
    NSLog(@"添加一句log");
}

进行Commit

我们在ViewController.m中添加一个NSLog后,假如说该阶段的工作完成了,需要提交下代码,选择Source Control-Commit或者command+option+c,调出页面如图


左侧可以看到都有哪些文件做了修改,点击相应的文件,可以在右侧查看具体修改的代码,两个版本的代码之间有个按钮,点击后可以选择不提交该改变或者还原该改变。


底部可以填写这个版本改变的描述。写好之后,右下角Commit 1File进行提交,Git会将这个改变保存在本地仓库中,文件的M标记消失。在Source Control navigator里点击master分支,右侧多了一条记录,如果要查看之前的版本,在相应记录上右击选择check out,check out是将相应版本代码从本地仓库中取出。


3.使用分支

在新添加一个功能时,我们可以进行手动备份,也可以用Git进行创建分支,新功能在分支中测试,完成后,将分支合并到master分支就行了。在master上右击选择Branch form 'master',新建名字为newFunc的分支,我们也可以在右侧的版本记录右击选择从相应的版本创建分支。


创建好后,如图


可以看到newfunc分支跟master分支具有相同的版本历史,如果从右侧的版本历史右键创建分支的话,则新分支的版本历史是到当前版本为止。

为新分支添加一个方法,并commit修改

- (void)func{
    
}

可以看到newFunc分支有三个版本记录,而master仍旧是两个版本记录,因为newfunc是current分支,所以commit提交的版本会保存在newFunc分支中,想要切换master分支则在master上右击选择check out,则master变为current分支,并且添加的func方法也不存了,因为func方法是在newFunc分支中创建的。


右击newFunc,选择merge 'newFunc' into 'master'将newFunc分支合并到主分支。可以看到master分支也有三个版本控制历史


当新功能完成并合并分支后,newFunc分支就可以删除了。你还可以给版本历史和分支添加Tag标记,用来记录分支的位置和一些版本的关键节点记录。

参考博客

猜你喜欢

转载自blog.csdn.net/yingbi2014/article/details/79805990