iOS上传代码到Github平台
![](https://img.haomeiwen.com/i3239766/5d046f1e43100262.jpg)
对于开发人员来说,很多时候想把自己好的代码 demo放到一个公共平台,与大家交流,Github就是一个不错的平台。
那么, iOS是如何上传代码到Github平台上呢?
第一步. 注册github账号
首先需要注册一个github账号,注册地址:https://github.com
![](http://upload-images.jianshu.io/upload_images/3239766-c6471e09239b5899.png)
如果已经有Github账号,那么直接进入第二步。
第二步. 配置Github的ssh key
显示隐藏文件
终端里输入显示隐藏文件:
defaults write com.apple.finder AppleShowAllFiles -bool true
关闭显示隐藏文件:
defaults write com.apple.finder AppleShowAllFiles -bool false
输入命令完成之后需要重启Finder(快捷键option+command+esc)
桌面顶部苹果logo->强制退出->
![](http://upload-images.jianshu.io/upload_images/3239766-a8314c857d55f112.png)
生成SSH密钥
-
前往个人文件查看有没有 .ssh 文件夹,有的话个人建议删除掉,从新配置
前往个人文件: 点击桌面导航栏->前往->个人->
![](http://upload-images.jianshu.io/upload_images/3239766-c361017eb9aece83.png)
-
创建 SSH key
-
1. 创建 .ssh 文件夹
终端里输入指令:mkdir ~/.ssh
![](http://upload-images.jianshu.io/upload_images/3239766-bbf593d9f91ac4b7.png)
-
2. cd到新建的 .ssh文件夹
终端里输入指令:cd ~/.ssh
![](http://upload-images.jianshu.io/upload_images/3239766-0b55f63797741284.png)
-
3. 创建SSH key密钥:
终端里输入指令:ssh-Keygen -t rsa -C “youEmail”
![](http://upload-images.jianshu.io/upload_images/3239766-acac5c81dfab917d.png)
> 代码参数含义:
> -t 指定密钥类型,默认是 rsa ,可以省略。
> -C 设置注释文字,比如邮箱。“youEmail”
> -f 指定密钥文件存储文件名。
以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,如:
![](http://upload-images.jianshu.io/upload_images/3239766-0e61c63a135c053b.png)
如果不想输入文件名,可直接按回车。那么会使用默认文件名(推荐),生成 id_rsa 和 id_rsa.pub 两个秘钥文件。
接着又会提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码)。
如果不想输入密码,可直接按回车。那么push的时候就不需要输入密码,直接提交到github上了,如:
![](http://upload-images.jianshu.io/upload_images/3239766-c13434f477dd1faf.png)
![](http://upload-images.jianshu.io/upload_images/3239766-b6f1c6e31a614b73.png)
接下来,就会显示如下代码提示,如:
![](http://upload-images.jianshu.io/upload_images/3239766-e7d55068a2745c83.png)
当你看到上面这段代码的收,那就说明,你的 SSH key 已经创建成功。
可通过终端查看。输入指令:ls -la
![](http://upload-images.jianshu.io/upload_images/3239766-bc87dae76910cab1.png)
-
添加 SSH key 到 github上
1. 拷贝 id_rsa.pub 文件的内容,你可以用编辑器打开文件复制,也可以用git命令复制该文件的内容。如:
终端里输入指令:pbcopy < ~/.ssh/id_rsa.pub
![](http://upload-images.jianshu.io/upload_images/3239766-cff65b59645aa51b.png)
2. 登陆github 账号,从右上角的设置( Account Settings )进入,然后点击菜单栏的 SSH and GPC keys 进入页面添加 SSH key。
![](http://upload-images.jianshu.io/upload_images/3239766-62ee786c6edb46fd.png)
![](http://upload-images.jianshu.io/upload_images/3239766-a9eaa9b5414fdcce.png)
![](http://upload-images.jianshu.io/upload_images/3239766-0becb975b21d7857.png)
3. 点击 Add SSH key 按钮添加一个 SSH key 。把你复制的 SSH key 代码粘贴到 key 所对应的输入框中,记得 SSH key 代码的前后不要留有空格或者回车。当然,上面的 Title 所对应的输入框你也可以输入一个该 SSH key 显示在 github 上的一个别名。默认的会使用你的邮件名称。
![](http://upload-images.jianshu.io/upload_images/3239766-0aea87de4280e08e.png)
注意:要在终端里输入指令:pbcopy < ~/.ssh/id_rsa.pub完成拷贝后,进行粘贴。粘贴后的样子:
终端里输入指令:pbcopy < ~/.ssh/id_rsa.pub后进行粘贴 粘贴后的样子
3. 点击add SSH key 按钮后完成SSH key的创建:
![](http://upload-images.jianshu.io/upload_images/3239766-95dda7b59739b493.png)
4. ssh连接到github上
回到终端输入指令:ssh -T git@github.com
![](http://upload-images.jianshu.io/upload_images/3239766-bb055a194abdaa53.png)
输出 Are you sure you want to continue connecting (yes/no)? 输入 yes 回车
![](http://upload-images.jianshu.io/upload_images/3239766-0f174a4d4e483142.png)
回到github,刷新网页。钥匙旁的灰色小圆点变绿,就表明已经添加成功了。
![](http://upload-images.jianshu.io/upload_images/3239766-55025b3c22d4b5ee.png)
第三步. 创建个人的github仓库
1. 登录你的github账号。在首页右侧点击New repository 创建仓库。
![](http://upload-images.jianshu.io/upload_images/3239766-3a100e354b66b811.png)
也可以来到个人中心里创建仓库。
个人中心 Your profile
Repositores
2. 填写库的相关信息
![](http://upload-images.jianshu.io/upload_images/3239766-ebe11f455cb70795.png)
开源协议:如何为你的代码选择一个开源协议
3. 创建完成好之后的样子。
创建仓库的时候最好别用中文,不然你的仓库名就会显示 - 这样一条小横线:
https://github.com/xxxxxx/-
![](http://upload-images.jianshu.io/upload_images/3239766-ab19fdeec23b38ea.png)
第四步. 上传本地项目到github上
使用终端
- cd到目标文件夹:cd
![](http://upload-images.jianshu.io/upload_images/3239766-876bde910da154b1.png)
- 创建一个新的git仓库: git init(在本机上想要创建一个新的git仓库)
![](http://upload-images.jianshu.io/upload_images/3239766-b54fce48050c3719.png)
- 信息添加到索引库:git add -A (git add -A: [path]表示把中所有tracked文件中被修改过或已删除文件和所有untracted的文件信息添加到索引库,省略表示:即当前目录。 )
![](http://upload-images.jianshu.io/upload_images/3239766-b1fbfcbcde23ed47.png)
- 关联远程仓库: git remote add origin xxxxxxxxx (xxxxxx就是你仓库的地址,具体的地址可以去Github上copy。)
https://github.com/ShiKaiMing/CustomCommentsAndPhotos.git
![](http://upload-images.jianshu.io/upload_images/3239766-8e23bcf1569ec5d1.png)
- 提交信息: git commit -m “提交信息” ( m 后面要有一个值。这里是:“提交信息”)
![](http://upload-images.jianshu.io/upload_images/3239766-35eca01846304355.png)
- 更新远程更新到本地(推送本地更新到远程):git pull --rebase origin master (注意rebase前面是两个-,不是一个-,而是 –杠杠,哈哈,别搞错了)
![](http://upload-images.jianshu.io/upload_images/3239766-b17db15a9e565cb3.png)
- 将本地repo于远程的origin的repo合并:git push origin master(git push -u origin master)( 将本地repo于远程的origin的repo合并,第一次用-u,系统要求输入账号密码)
![](http://upload-images.jianshu.io/upload_images/3239766-38340badd9cc00c7.png)
- 上传add的代码:git pull (上传add的代码)
![](http://upload-images.jianshu.io/upload_images/3239766-5cc19fb2fef501c2.png)
- 去Github上面检查代码,已经上传成功。
![](http://upload-images.jianshu.io/upload_images/3239766-7a075ed6fb0aab49.png)
使用github客户端
-
下载github客户端: https://desktop.github.com
-
下载好之后输入用户名 邮箱 密码登陆之后clone刚创建的仓库到本地
![](http://upload-images.jianshu.io/upload_images/3239766-7883205e5ed9a88a.png)
![](http://upload-images.jianshu.io/upload_images/3239766-fbeb1d38156b09a1.png)
![](http://upload-images.jianshu.io/upload_images/3239766-8ab7947fe3042b15.png)
- 接着打开clone到本地的文件夹 将需要上传的项目添加进去这里以CustomCommentsAndPhotos文件夹为例,里面放你想要上传的项目
![](http://upload-images.jianshu.io/upload_images/3239766-71a60fdb6b0f54e9.png)
- 添加之后回到github客户端。提交你的项目。
![](http://upload-images.jianshu.io/upload_images/3239766-81d6748764525f4b.png)
- 然后点击右上角的Sync按钮
![](http://upload-images.jianshu.io/upload_images/3239766-ecae487a4e9e9fd2.png)
- 到github上刷新
提交前是这样的
提交前是这样的
提交之后是这样的
提交之后是这样的