Git教程(8)Git几种工作方式
1,集中共享式(1个仓库)

其中角色:
1个远程仓库,N个开发者。
工作方式:
集中式系统:所有开发者共享同一个远程仓库。每次推送数据到远程仓库时都要先更新一下。
利用 Git 的分支模型,通过同时在多个分支上工作的方式,即使是上百人的开发团队也可以很好地在单个项目上协作。
2,集成管理者式(n个仓库)

其中的角色:
一个官方管理者+1个官方仓库
N个开发者+N个开发者仓库
工作方式:
每个开发者都有一个远程仓库,同时对其它开发者仓库有读权限,开发者在自己的仓库中克隆官方仓库,完成一定开发后,请求管理者合并它的仓库到官方仓库。
项目维护者推送到主仓库。
贡献者克隆此仓库,做出修改。
贡献者将数据推送到自己的公开仓库。
贡献者给维护者发送邮件,请求拉取自己的更新。
维护者在自己本地的仓库中,将贡献者的仓库加为远程仓库并合并修改。
维护者将合并后的修改推送到主仓库。
3,司令,副官式(n个仓库)

其中角色:
1个司令
n个副官
n个开发者+n个开发者仓库
工作方式:
集成管理者式的变种,一个副官管理多个开发者仓库,一个司令管理多个副官仓库。 一般拥有数百位协作开发者的超大型项目才会用到这样的工作方式,如Linux 内核项目。
普通开发者在自己的特性分支上工作,并根据
master分支进行变基。 这里是司令官的master分支。副官将普通开发者的特性分支合并到自己的
master分支中。司令官将所有副官的
master分支并入自己的master分支中。司令官将集成后的
master分支推送到参考仓库中,以便所有其他开发者以此为基础进行变基。
Git教程(8)Git几种工作方式的更多相关文章
- LVS三种工作方式八种算法
一.集群简介 什么是集群 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算 ...
- LVS原理详解及部署之二:LVS原理详解(3种工作方式8种调度算法)
一.集群简介 什么是集群 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一 台计算机.集群系统中的单个计 ...
- 80x86的3种工作方式
80x86中的32位CPU全面支持32位的数据.指令和寻址方式,提供了3种工作方式:是地址方式.保护方式和保护方式下的虚拟8086方式.在计算机上电或复位后,32位CPU首先初始化为是地址方式,再通过 ...
- LVS原理详解(3种工作方式8种调度算法)--老男孩
一.LVS原理详解(4种工作方式8种调度算法) 集群简介 集群就是一组独立的计算机,协同工作,对外提供服务.对客户端来说像是一台服务器提供服务. LVS在企业架构中的位置: 以上的架构只是众多企业里面 ...
- Git使用手册/Git教程:git fetch 将远程仓库的分支及分支最新版本代码拉取到本地
相关文章: 关于验证是否存在ssh配置以及生成SSH Key的方法可以参照文章:Git使用手册:生成SSH Key 关于SSH Key的使用和公钥在gitHub.gitLab的配置等,请参考文章:Gi ...
- Git教程(3)git工作区与文件状态及简单示例
基础 目录: working driectory 工作目录,就是我们的工作目录,其中包括未跟踪文件及暂存区和仓库目录. staging area 暂存区,不对应一个具体目录,其实只是git di ...
- LVS原理详解(3种工作方式8种调度算法)
一.集群简介 什么是集群 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算 ...
- 廖老师git教程执行"git checkout -b dev origin/dev"命令报出:fatal: Cannot update paths and switch to branch 'dev' at the same time. Did you intend to checkout 'origin/dev' which can not be resolved as commit?问题解决
在学习廖老师git教程之多人协作模块时按照老师的操作先创建了另一个目录,然后在这个目录下从GitHub上clone了 learngit目录到这个目录下,同样的执行了git branch查看分支情况,确 ...
- git 教程2 (git常用命令解说)
<1>$ git -- help (调出git的帮助文档) <2>$ git +命令 --help (查看某个具体命令的帮助文档) <3>$ git --versi ...
随机推荐
- jQuery Easyui DataGrid应用
冻结列 $('#tbList').datagrid({ pagination: true, frozenColumns: [[ { field: 'BId',checkbox:'true',width ...
- 如何开发 Grunt 插件
创建 grunt 插件 准备工作:(node/npm/git 安装,在此不做赘述) yeoman generator 可以自动生成一个插件模板. 安装 yo npm install -g yo 安装 ...
- phpcms v9 打开网站特别慢 增加数据库缓存方法
SET GLOBAL QUERY_CACHE_SIZE=80000000; 设置好查询缓存的大小就行了.比如设置个20MB.SET GLOBAL QUERY_CACHE_SIZE=20000000; ...
- PyQt4学习记录之事件和信号
事件是任何 GUI程序中很重要的部分.所有 Python GUI 应用都是事件驱动的.一个应用对其生命期产生的不同的事件类型做出反应.事件是主要由应用的用户产生.但是,也可以通过其他方法产生,比如,网 ...
- Ubuntu下Sublime Text 3无法输入中文的解决方案
1. 保存下面的代码到文件sublime_imfix.c中: /* * sublime-imfix.c * Use LD_PRELOAD to interpose some function to f ...
- 【BZOJ 1491】 [NOI2007]社交网络
Description Input Output 输出文件包括n 行,每行一个实数,精确到小数点后3 位.第i 行的实数表 示结点i 在社交网络中的重要程度. Sample Input 4 4 1 2 ...
- Linux操作系统
Linux操作系统 linux源码分析(三)-start_kernel 2016-10-26 11:01 by 轩脉刃, 146 阅读, 收藏, 编辑 前置:这里使用的linux版本是4.8,x86体 ...
- 实现WebApp直接调起NativeApp
原文http://www.baidufe.com/item/3444ee051f8edb361d12.html 试了一个小Demo,从WebApp上直接调起Android Native App,包括应 ...
- Fail-fast的原因及解决方法
[转载]:http://blog.csdn.net/chenssy/article/details/38151189 在JDK的Collection中我们时常会看到类似于这样的话: 例如,ArrayL ...
- [转载]EasyUI Pagination 分页的两种做法
EasyUI 的 datagrid 支持服务器端分页,但是官方的资料比较少,以下总结了两种 datagrid 的服务器端分页机制,可根据情况具体使用. 一:使用 datagrid 默认机制 后台: p ...