资源预览内容
第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
第9页 / 共10页
第10页 / 共10页
亲,该文档总共10页全部预览完了,如果喜欢就下载吧!
资源描述
GitHub概述及基本操作GitHub概述及基本操作1.GitHub是什么?2.Git与GitHub操作2.1 GitHub上的操作2.2 Git上对GitHub的操作 1.前提 2.Git推送至GitHub:git remote add/git push 3.Git克隆/更新GitHub上的项目:git clone/git pull2.3 协作冲突2.4 Git免密登陆GitHub3.Git工作流1.GitHub是什么?GitHub是一个Git项目托管网站,主要提供基于Git的版本托管服务2.Git与GitHub操作2.1 GitHub上的操作 1)在GitHub上可以创建自己的仓库,也可以任意Fork开源仓库(Repository); 2)自己拥有Fork后的仓库的读写权限; 3)也可以推送pull request给Fork的官方仓库来贡献代码2.2 Git上对GitHub的操作1.前提以上对项目的操作方式,必须是项目的创建者或者合作伙伴。合作伙伴添加方式如下图: 在项目中点击settings页签,点击Manage access,Invite a collaborator 然后在文本框中搜索合作伙伴的邮箱或者账号。点击添加。 添加后GitHub会给合作伙伴对应的邮箱发一封邀请邮件。 合作伙伴会收到邀请邮件。点击View invitation 按钮后会跳转至GitHub页面,让合作伙伴选择,是否接受邀请。 点击接受后,则合伙伙伴正式加入项目,获得直接提交代码的权限。2.Git推送至GitHub:git remote add/git push1)增加远程地址git remote add 。 是指远程链接的代号,一般直接用origin作代号,也可以自定义。 默认远程链接的url# 例如git remote add origin https:/github.com/user111/Helloworld.git2)推送到远程库git push 是指远程链接的代号。 是指要提交的分支名字,比如master# 例: git push origin master3.Git克隆/更新GitHub上的项目:git clone/git pull1)从GitHub上克隆一个项目git clone 是指远程链接的地址。 是指为克隆的项目在本地新建的目录名称,可以不填,默认是GitHub的项目名命令执行完后,会自动为这个远端地址建一个名为origin的代号。# 例如:git clone https:/github.com/user111/Helloworld.git hello_world2)从GitHub更新项目git pull 是指远程链接的代号。 是指远端的分支名称,如master。# 例如:git pull origin master2.3 协作冲突在上传或同步代码时,由于你和他人都改了同一文件的同一位置的代码,版本管理软件无法判断究竟以谁为准,就会报告冲突,需要程序员手工解决。解决冲突三板斧: 1、修改合并 2、git add 3、git commit# 获取最新代码,会与与本地代码Conflict,此时修改合并git pull origin mastergit addgit commit# 最后再进行提交git push origin master2.4 Git免密登陆GitHubhttps VS ssh : ssh模式比https模式的一个重要好处就是,每次push、pull、fetch等操作时,不用重复填写遍用户名密码。 前提是你必须是这个项目的拥有者或者合作者,且配好了ssh key步骤1:检查你的电脑上是否已经生成了SSH Key 在git bash下执行如下命令cd cd .ssh如果已经有这个文件夹,删除步骤2:创建SSH Key,运行以下命令ssh-keygen -t rsa -C 成功的话会在/下生成.ssh文件夹(包含公钥于秘钥文件),打开id_rsa.pub,复制里面的key。步骤3:进入.ssh文件包,打印id_rsa.pub的内容,复制全部内容步骤4.登录Github后,右上角点击setting步骤5.在左侧菜单中选择SSH and GPG keys,在右边点击New SSH key步骤6 :Title随便写,Key 把之前id_rsa.pub的内容复制进去,点击Add SSH key,设置ssh key 完成 一台设备只能配置一个GitHub账号,但一个GitHub账号可以设置多个免密登陆设备。测试连通性:要改用ssh连接# 1)要建立新的远程代号:改用ssh连接git remote add originssh gitgithub.com:yuebuqun777888/bixiejianfa.git# 2)以后再提交代码的时候就不用输入密码了(第一次使用会要求输入个 yes)git push originssh master3.Git工作流Git工作流:简单来说就是,一个项目的成员们在工作中统一使用Git的工作方式。与其相对的是集中式工作流: 像SVN一样,集中式工作流以中央仓库作为项目所有修改的单点实体。所有修改都提交到Master这个分支上。 这种方式与SVN的主要区别就是开发人员有本地库。Git很多特性并没有用到。GitFlow工作流: Gitflow工作流通过为功能开发、发布准备和维护设立了独立的分支,让发布迭代过程更流畅。严格的分支模型也为大型项目提供了一些非常必要的结构。在项目开发过程中,系统的线上版本即master不能随意修改,Gitflow工作流通过为功能开发develop、发布准备release和维护hotfix设立了独立的分支,每一次修改都会合并到开发分支中,当功能开发完成之后,经过发布准备release之后,并到主版本master中.GitFlow分支种类:1)主干分支 master 主要负责管理正在运行的生产环境代码。 永远保持与正在运行的生产环境完全一致。2)开发分支 develop 主要负责管理正在开发过程中的代码。 一般情况下应该是最新的代码。3)bug修理分支 hotfix 主要负责管理生产环境下出现的紧急修复的代码。 从主干分支分出,修理完毕并测试上线后,并回主干分支。 并回后,视情况可以删除该分支。4)发布版本分支 release 较大的版本上线前,会从开发分支中分出发布版本分支,进行最后阶段的集成测试。 该版本上线后,会合并到主干分支。生产环境运行一段阶段较稳定后可以视情况删除。5)功能分支 feature 为了不影响较短周期的开发工作,一般把中长期开发模块,会从开发分支中独立出来。 开发完成后会合并到开发分支。注意: GitHub只能记录各个分支的操作,并不能处理最终master的合并,合并还需要Git完成,然后push到GitHub上。
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号