上面的所有都是针对个人开发者而言。如果在公司内部需要多人一起开发,就需要团队协作,这里我们的傻瓜教程还是通过设置GitHub网站来设置,其实无非就是下面几步:
创建组织->创建仓库->创建分支->创建团队->邀请队友
1.创建组织,通过YIFer用户来创建组织,那么这个用户相当于就是组织的发起人,默认拥有最高权限
2.邀请伙伴,创建组织时要求你邀请伙伴,输入搜索你想要邀请的伙伴,加入到你的团队中。注意邀请之后,GitHub会向被邀请者发送一封邮件,对方确认之后就会加入到你的团队组织中。当然这一步可以以后再做,因为在创建时会有一个默认团队Owner(拥有着),有着最高权限.我们可以在以后重新设置团队(权限)之后再邀请伙伴
3.发送的邀请邮件,注意下面的几个注意事项…
首先解释一下分支的概念
分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN。
如果两个平行宇宙互不干扰,那对现在的你也没啥影响。不过,在某个时间点,两个平行宇宙合并了,结果,你既学会了Git又学会了SVN!
分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。
现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。
其他版本控制系统如SVN等都有分支管理,但是用过之后你会发现,这些版本控制系统创建和切换分支比蜗牛还慢,简直让人无法忍受,结果分支功能成了摆设,大家都不去用。
但Git的分支是与众不同的,无论创建、切换和删除分支,Git在1秒钟之内就能完成!无论你的版本库是1个文件还是1万个文件。
5.上面这段废话的中心意思:分支的作用的主要是为了不影响主版本.就如一个这样的常见,我的项目一个主版本发布了,但是用户反映了一些意见或者BUG,那我们就要在既不影响当前版本的情况下,去进行修改,因为我们就要创建一个BUG的分支,这个分支就会基于当前版本的源码去进行操作.当然,我们可以专门为开发者去创建一个分支,以免影响主版本
7.创建新的team
8.团队中有三种权限:Read Access(只读)、Write Access(可读可写)、Admin Access(管理者权限),其中默认的Owners就是Admin Access权限的.
9.邀请队员,在红框的部分输入搜索队员
10.本地工具开发,导入团队项目
11.选择dev分支进行提交,当然在提交过程中可能出现一些问题,我们可以Revert返回本次提交,然后再进行提交,这些可以在历史History中看到。但是这些只是在dev分支中进行的,不会对main分支产生任何的影响。当我们最终确定好之后,可以将dev分支中的内容Merge合并到main分支中
在GitHub网站中,可以看到:
dev分支
master分支
12.点击manager,进入分支管理,将希望合并的两个分支合并
13.注意先后顺序
14.最后进入master分支就可以看到合并后的变化,最后提交同步就可以了
15.如果另外一个人员同样加入了我们的YIFHiro项目团队,同样可以通过工具clone项目,然后提交他自己编写的代码。提交过程一模一样
16.当其他人员提交之后,可以看到GitHub网站上马上发生了变化
17.如果是YIFer在使用工具,那么他就可以直接在dev分支下马上看到变化了
点击sync就可以直接同步了。
当然最后要说的是,既然是通过网站操作,那么就没有私密性可言,如果公司的项目比较重要还是需要自己搭建git服务器,在局域网内使用。不过要私密性…还要Git干嘛呢?
基本上GitHub的简单使用就是这些了,期间没有用到任何的命令行代码,都是通过工具和网站操作来进行的。最大程度上减小了那些对命令行无感或者完全不了解Linux同学学习的难度。
如果还觉得上面的东西比较零散,那么大家掌握住一个中心思想。使用Git,无非就是控制版本。在公司上班做为一个小程序员的话,无论用的什么工具,使用Git无非就是三步
**1.clone项目仓库
2.提交commit 自己本地版本
3.同步sync 项目**