主要内容
image.pnggithub创建
创建一个仓库
1.在github.com 注册一个账号并登陆,在左上角的加号创建自己的第一个项目
屏幕快照 2018-06-17 下午3.39.11.png
2.创建项目的选项
2.jpg- 1.写自己的项目名称,我这里是testDemo
- 2.项目的描述,写这个项目的作用
- 3.设置当前项目是公开还是私有,如果设置私有需要钱,这里设置公开。如果你想设置私有可以去其他地方建立仓库,比如码云。
- 4.打钩选择创建项目的忽略文件及项目的许可,忽略文件可以自己选自己的语言这里选OC,这个是测试项目许可随便选一个即可。
3.创建后的项目界面,我写了些注释,仅供参考
3.jpgfork一个仓库
当我们要为一个开源项目贡献自己的一份力时,我们会先fork一份项目的源代码到自己的仓库,fork相当于复制源项目的代码到自己的仓库里,你可以修改里面的代码和进行自己的测试等操作,fork的按钮在每个项目如上图显示的位置,点击之后会回到我们的项目里面。
例:我fork项目AFNetWorking
image.png
删除或者取消fork一个仓库
话不多说,进入需要操作的项目界面,点击项目界面设置按钮,滑动到最后面,点击Delete this repository
因为删除一个项目是不可恢复的所以需要输入项目名称(不区分大小写),输入名称后还需要输入当前账号密码才可以真正删除。
image.pngSSH Key使用
我们使用github克隆私有项目,提交项目代码时需要有凭证代表项目是你的。有两种方式一种是HTTPS,另外一种SSH方式。这两种方式在克隆时你可以选择,建议用ssh这种方式不止安全也对提交大文件没有限制。
image.png创建公钥
打开自己的终端输入如下命令,
ssh-keygen -t rsa -C "xx@xx.com”
xx@xx.com为你的github账号,命令执行后需要你两次输入密码,输入完之后一直回车即可
生成完之后在命令行输入:
cat ~/.ssh/id_rsa.pub
复制命令行打印出来的一大串字符串,打开github登录刚刚的账号打开设置
关联GitHub
image.png进入SSH设置,点击New SSH Key
复制到下面的对话框中,取个名字添加即可。
image.png验证是否生效
添加公钥到github我们要验证是否添加正确,在命令行输入如下命令:
SSH -T git@github.com
#输出如下代表正确添加了
Hi GuoMs! You've successfully authenticated, but GitHub does not provide shell access.
多个key处理方案
关于设置多个key问题请参考这里:https://www.jianshu.com/p/1b5347c4583e
安装git
因为是iOS所以我默认读者使用的mac,mac下安装git很简单,只有用homebrew安装git就行
brew install git
如果homebrew没有安装就先执行安装
ruby -e"$(curl -fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)"
使用git命令
远程仓库关联本地新项目
首先到刚创建的新仓库复制项目的仓库地址,记得用SSH
image.png打开终端进入到项目的根目录输入以下两个命令:
git init
#输出
Initialized empty Git repository in /Users/xxxxx
git remote add origin 你的仓库地址
输入完成之后我们发现项目根目录下有多了一个.git文件夹
image.pnggit常用命令
1、git init 把项目变成git可以管理的仓库
git init
2、克隆代码到本地
git clone 你的仓库地址
3、更新远程代码到本地仓库
git pull
4、新建一个分支,并切换到当前分支
git checkout -b 新建分支的名称
5、切换到指定分支下
git checkout 分支名称(需要英文)
6、把文件到暂存区里面去,小数点“.”,表示添加文件夹下更改还未添加的到暂存区的所有文件,你也可以添加指定文件名的文件
git add .
git add fileName
7、用命令 git commit告诉Git,把文件提交到仓库,-m表示备注
git commit -m '我是备注'
8、上面的关联到远程库
git remote add origin 你的仓库地址
9、把本地库的内容推送到远程,实际上是把当前分支master推送到远程,如果是其他分支就写其他的分支名称。
git push -u origin master
10、状态查询命令
git status
11、记录查询,查看提交的记录,版本等
git log
以上命令一个人开发中基本足够用,需要多人协助等需要进一步学习
注:
- 所有命令都是在项目根目录下执行,即在.git文件夹同级目录
tag命令
项目打标签非常重要,我们在实际开发中不可能所有功能开发完就发布代码,同时各个版本的也需要做区分tag命令就是帮我们做这件事,打标签只是对当前代码设置一个别名让我们更好的识别。
1、对当前代码打标签
#打一个版本为v1.0的标签
git tag v1.0
#也可以这样两个等效,区别是多一个备注
git tag -a v1.0 -m '备注'
2、删除一个tag
git tag -d v1.0
3、显示所有tag
git tag
4、显示特定版本的tag
git tag -l 'v1.0.*'
5、推送到远端正式生效
#推送tag 1.0.0
git push origin 1.0.0
#推送所有本地tag
git push origin --tags
git客户端
为了方便代码的提交和管理我们可以使用客户端操作仓库代码的各种操作,这里推荐的客户端是Sourcetree,它是免费的只要注册一个账号即可,并且有中文版本,地址:https://www.sourcetreeapp.com/
image.png
网友评论