目前主流的版本控制系统有SVN和GIT,虽然国内绝大多数公司都使用SVN来部署工程项目,但是与GIT相比它的劣势还是十分明显的:
1.SVN是集中式的,不具备本地仓库,而只有一个共属的远程仓库,因此提交代码和查看版本记录都需要联网;而使用GIT在自己电脑上具有本地仓库,我们可以无需联网就提交自己的代码和查看版本记录
2.SVN在Commit前,最好建议先Update,确保编译通过后再提交,否则容易出现版本突出问题
3.GIT的内容存储使用的是SHA-1哈希算法,更能确保代码内容的完整性
4.苹果对SVN的兼容性相比GIT较差,有时候会出现一些莫名的错误,也是它容易造成冲突的原因之一
就我了解,可以免费托管开源代码的远程仓库有github和oschina,因为github的服务器在国外,所以速度较慢,尤其是在我们clone的时候感觉尤为明显,并且在github上建立私有项目需要付费,而这两个问题oschina都不存在,所以下面我就位大家介绍一下如何使用oschina搭建项目
步骤
-
1.注册账号并登录
-
2.添加 SSH 公钥,
- 进入终端,并输入以下命令
进入.ssh目录
# 切换目录,MAC中目录的第一个字符如果是 `.` 表示改文件夹是隐藏文件夹
$ cd ~/.ssh
# 查看当前目录文件
$ ls
#如果.ssh文件夹不存在,可以执行指令自行创建
$ mkdir ~/.ssh
.ssh目录下的文件
- 生成 RSA 密钥对
$ ssh-keygen -t rsa -C "你的邮箱@xx.com"
# 接下来连续敲回车键,如果电脑有开机密码需要输入密码(输入密码是界面不会有提示,输入完按回车就行)
最终界面会如下显示说明成功生成公钥
- 查看公钥内容
$ cat ~/.ssh/id_rsa.pub
- 拷贝公钥内容
- 打开 https://git.oschina.net/profile/sshkeys, 将公钥粘贴到相应位置
- 注意:公钥内容以ssh-rsa开头,邮箱结尾, 拷贝时不能多一个空格,也不能少一个空格,格式等必须和生成的公钥一致
- 3.测试公钥
# 测试 SSH 连接
$ ssh -T git@git.oschina.net
# 终端提示 Welcome to Git@OSC, 电脑账户名!` 说明连接成功
- 4.在oschina新建项目
- 5.克隆项目到本地
#配置好sshkey之后, 以后只需要拷贝ssh链接地址,然后利用git指令即可进行相关操作
$ git clone git@git.oschina.net:xxx/ProjectName.git
注意:oschina仓库有两种地址,一个是通过http访问的地址,一个是通过ssh访问的地址。从oschina拷贝下来的文件默认保存在.ssh隐藏文件中
- 6.添加
gitignore
#下句指令的意思是将指定路径下的swift.gitignore文件内容拷贝到.gitignore目录下
$ cp /Users/laichunhui/Desktop/工具包/git/gitignore-master/Swift.gitignore .gitignore
- 提示:
- 可以从 https://github.com/github/gitignore 获取最新版本的
gitignore
文件,拷贝相应语言的.gitignore到项目中 - 添加
.gitignore
文件之后,每次提交时不会将个人的项目设置信息(例如:末次打开的文件,调试断点等)提交到服务器,有助于节省空间占用,并且可以规避一些不必要的冲突,有益于团队开发
- 可以从 https://github.com/github/gitignore 获取最新版本的
- 7.上传修改后的项目
$ git add .
$ git commit -m"添加gitignore"
$ git push
如果你的项目里使用了cocoapods
,上面的指令的指令会将cocoapods
中的内容一并上传,虽然占用了许多空间,但是相比较于每每同步项目后的pod update
,我想这样会让我们的开发更得心应手。
- 想了解更多,可以参考开源中国帮助文档:https://git.oschina.net/oschina/git-osc/wikis/帮助#ssh-keys