随着ios开发的广泛普及,使用XCode编写程序的情况也越来越多,因此代码的版本管理以及多人的协同开发出现的问题也越来越频繁。而XCode对git功能的支持实在是不怎么用。
例如,XCode不能给branch打tag,如果要给branch加上tag,那么需要在项目的目录下,输入命令行,
git tag -a tagName -m "tag info", tag的具体参数,可以使用git tag --help获得更多的帮助信息。
如果需要提交打的tag,那么可以输入命令行:
git push --tags
在XCode中切换branch,会发现速度确实很慢,而使用命令,却很快,可以使用git checkout youbranch
同样在XCode中添加branch,仍然速度特别慢,同样使用命令行,很快,具体操作为:git branch branch_name
提交branch, 操作为:git push -u origin branch
如果你既创建了branch由给某个branch添加了tag名字,并且branch名字与tag名字一致,那么当你提交branch或者tag时,会出现了error: src refspec XXX matches more than one 这样的错误。
这里有两种方法解决问题,
一种是告诉服务器删除branch的分支,即: git branch -D branch_name
还可以告诉服务器删除tag的分支,即git tag -d tag_name
既然有分支,那不可避免的有合并分支,一般来说是将某个分支与master分支进行合并,直接使用merge命令即可。如果想要将bugFix分支与master合并,那么执行命令:
git checkout master //切换到master分支下
git merge bugFix
有了这么多的分支,如何查看有些是未合并的分支或者是想删除这些分支也是个问题。其中:git branch --no-merged
是执行查看尚未合并的工作。如果确实想删除某些分支,如testing分支,可以用git branch -d testing,但是这样有一定的风险,会丢失testing分支的数据。切记小心。