Git--分布式版本控制系统
使用Git实现多人协作开发
1.简述
每创建一个大的web项目都会有团队协作完成, 然这个过程有可能就像毕业生写论文的过程, 这个过程会有很多...修改的版本, 我们的项目也是会经过无休止的改需求, 改需求...最终定稿,完成项目终极版。
首先, 它的工作原理: 一个git版本库服务器, 程序员们在自己的电脑上的git版本进行常规开发, 所有的git管理按照单人开发就ok, 然后将完成的工作push(推送)给服务器(注意: 如果该程序员的版本不是最新的, 需要先从git服务器pull(拉去)最新版本,然后再push ), 然后别的程序员想获取新的版本也是pull就行了. 这里第一次pull的时候,可能会出现一个问题 : 报错 .....下面涉及到的时候我们会详细说明的。
这里先将几个概念: 工作区 版本库 暂存区 分支
项目包括 : 版本库和工作区
工作区包括 : 暂存区和 master分支
版本库 工作区
2.步骤如下:
1). 项目经理在gitServer文件目录下建立一个git裸服务器;
git init --bare 显示如下 :
2). 小组各位程序员将该裸服务器clone(克隆)到本地;
甲程序员:
git clone git服务器的绝对路径/url 显示如下:
生成一个含有.git文件的文件夹gitServer(和git服务器根文件名相同)
乙程序员做和甲程序员相同的操作;
3).甲程序员更改项目, 并合并到git服务器的过程
①打开本地git库目录到.git同级目录下,新建一个jia.html
②鼠标右击, 打开Git Bush Here
③将jia.html添加到工作区中的缓存区
git add 文件名 显示如下:
④将缓存区中的内容提交到git服务器的master分支
git commit -m 注释文字 显示如下:
4).乙程序员重复步骤3(不同之处是: 新增文件名为 yi.html)
如图:
5). 这时重点来了, 怎么样让甲的本地项目获取到乙新增的文件yi.html呢 ? 首先乙要先push,把新增的文件push(推送)到git服务器上,而且为了乙在推送之前要保证自己是最新版本, 乙要先 pull,就是从git服务器pull(拉去)最新版本(预防万一别的程序员已经对项目做了改变呢)
①乙拉去新版本
git pull
②乙把新增的yi.html文件push到git服务器
git push origin master
OK, 现在怎么让甲的本地项目中也有yi.html文件呢, 那么见证奇迹的时候到了
去甲的本地项目根目录下
git pull
那么问题来了, 它给我们报了一个致命的错误. 这个问题怎么解决呢?
这个时候注意: 我在一个国外的类似一个问答的网站stack overflow上找到了答案
这时, OK了, 甲的本地项目里面 出现了yi.html , success !!!
同理, 乙本地项目获取jia.html
git pull
OK, 就到这里, 我们已经完成了, 相信到这里我们已经了解了版本控制系统的强大, 和实际开发中的重要性了吧!!!
---初来乍到,知识欠缺,不足之处,欢迎指正...
Git--分布式版本控制系统的更多相关文章
- GIT分布式版本控制系统
Git诞生历史 我想大家还记得Linus torvalds在1991年时发布了Linux操作系统吧,从那以后Linux系统变不断发展壮大,因为Linux系统开源的特性,所以一直接受着来自全球Linux ...
- Git ——分布式版本控制系统
Git ——分布式版本控制系统 本人git主页地址:https://github.com/lendoon/test.git git使用心得:初次接触git在课堂上,老师给我们提供了一个代码托管的场所, ...
- 手把手教你玩转Git分布式版本控制系统! (转载)
目录 Git诞生历史 Git环境准备 Git安装部署 Git常用命令 Git基本操作 Git管理分支结构 Git管理标签 GitLab安装部署 GitHub托管服务 Git客户端工具 Git诞生历史 ...
- 手把手教你玩转Git分布式版本控制系统!
目录 Git诞生历史 Git环境准备 Git安装部署 Git常用命令 Git基本操作 Git管理分支结构 Git管理标签 GitLab安装部署 GitHub托管服务 Git客户端工具 1 Git诞生历 ...
- g4e基础篇#2 Git分布式版本控制系统的优势
g4e 是 Git for Enterprise Developer的简写,这个系列文章会统一使用g4e作为标识,便于大家查看和搜索. 章节目录 前言 1. 基础篇: 为什么要使用版本控制系统 Git ...
- GIT 分布式版本控制系统的简单使用介绍
GIT 分布式版本控制系统的简单使用介绍 1.GIT的概念Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 与 SVN 区别:1. GIT不仅仅是个版本控制系统,它 ...
- 《Linux就该这么学》自学笔记_ch21_使用Git分布式版本控制系统
<Linux就该这么学>自学笔记_ch21_使用Git分布式版本控制系统 文章主要内容: 分布式版本控制系统 使用Git服务程序 提交数据 移除数据 移动数据 历史记录 还原数据 管理标签 ...
- 开发效率优化之Git分布式版本控制系统(一)
阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680本篇文章将先从Git分布式版本控制系统来阐述开发效率优化 一,企业 ...
- Git分布式版本控制系统(下)
Git分布式版本控制系统(下) 链接:https://pan.baidu.com/s/1CgaEv12cwfbs5RxcNpxdAg 提取码:fytm 复制这段内容后打开百度网盘手机App,操作更方便 ...
- Git分布式版本控制系统(上)
Git分布式版本控制系统(上) 链接:https://pan.baidu.com/s/1CgaEv12cwfbs5RxcNpxdAg 提取码:fytm 复制这段内容后打开百度网盘手机App,操作更方便 ...
随机推荐
- the difference between const int *, int * const, int const *
Some people may be confused about the sequence of const and * on declaration in C++/C, me too. Now I ...
- mysql order排序
使用order by 可以对结果进行排序, 默认情况下,order by 以升序进行排序,因此ASC 子句是可选的. DESC 是降序排列. 升序 select * from emp where d ...
- 学习css中得与惑
css的学习分享 所学的css知识看多,会看懂.这只是在实践中发现的问题: 一. ???h1比div还大 h1上下有边距 为什么浮动不了 (现不知道) 二. css写了 表现不出来.... ...
- MIT JOS学习笔记02:kernel 01(2016.10.28)
未经许可谢绝以任何形式对本文内容进行转载! 在文章开头不得不说的是,因为这部分的代码需要仔细理清的东西太多,所以导致这篇分析显得很啰嗦,还请谅解. 我们在上一篇文章已经分析了Boot Loader的功 ...
- eclipse+spket+Extjs4.2.1开发环境搭建
一.开发工具配置 1.http://www.eclipse.org/downloads/下载Eclipse,解压. 2.http://spket.com/download.html ...
- C#连接操作mysql实例
第三方组件:Mysql.Data.dll说明:去官方网站下载Mysql.Data.dll,然后在项目中添加该组件的引用,在代码页里输入using Mysql.Data.MysqlClient,我们就可 ...
- KO中对象数组排序时,两个属性的优先顺序不一致时的排序实现
function FromSort(left, right, asc) { if (left.属性1 != "") { if (right.属性1 != &qu ...
- [转]windows下编译及使用libevent
http://www.cnblogs.com/luxiaoxun/p/3603399.html Libevent官网:http://libevent.org/ windows 7下编译: 编译环境: ...
- 获取广告标识符ifad
#import <AdSupport/ASIdentifierManager.h> NSString *adId =[[[ASIdentifierManager sharedManager ...
- windows下IIS+PHP解决大文件上传500错问题
linux下改到iis+php后,上传大于2M就出500错,改了php.ini中的upload_max_filesize也不行,最后解决如下: 第一步:修改php.ini 上传大小限制 (以上传500 ...