基本流程:

1..创建一个git裸服务器(git init --bare)

2..从裸服务器将版本库克隆到本地(git clone)

3..本地常规操作(git remote + git push origin master)

4..从远程服务器拉取版本(git pull)

在正常情况下都是搭建在linux服务器上的,不过这次我可以在windows上模拟一个环境来实现给大家看看

先抽奖一个test2的文件夹,一般的情况下这个都是放在公司的服务器上的。。。

然后进入git 创建一个裸服务器

git init --bare

上面的  Repository 的中文意思是仓库的意思噢,嘻嘻。。

然后我们即可发现 test2 目录下多了很多的东西:

其实所谓的裸服务器就是指版本库的内容,没有工作区。

如果非要操作的话就会出先如下类型的错误,所以在这个目录下没有操作的权限

所以对于git服务器而言,所要做的就是创建好版本库,没有其他的。。。。

第二步就是要服务器版本库克隆到本地

首先就要将服务器上的版本库克隆到自己的电脑上

git clone 地址

如: git clone 192.168.0.1  这里一般都是公司的一个版本库服务器的ip或者一个域名,看实际情况来定

在本地里创建了一个test3的文件夹,然后在git下输入git clone 地址,因为在本地测试的,所以直接输入盘符即可

git clone D:\git\test2

很明显在test3 文件夹里面多了一个文件夹。。。

然后我们进去看下里面有什么东西:

很明显发现里面多了一个.git的隐藏目录文件,所以我们在自己的电脑上省去了git init 的操作了。。。。

比如程序员在里面写好了一个index.html 文件,如下所示:

有了这个文件后,他即可通过git add index.html  将文件添加到文件 暂存区 然后在git commit -m XXXXX 这样即可添加到文件仓库里面了。。。。

发现会报一个和上面这样的错误,其实原因也很简单,因为我们没设置用户名和邮箱,之需要创建好这两个问题即可解决。。。。

在这和时候BBBB程序员也来了,他也需要干同样的事情,比如创建一个test4的文件将来模拟BBBB程序员的电脑,那么他也是需要首先从服务器的仓库中克隆到自己的电脑上。。。

然后还需要进入文件夹的位置才可以。。。

这样我们即可进入该文件夹了,然后在这里面即可做他的常规开发即可。。。

经过团们的一同开发后我们需要将文件push到服务器上。。。。。。。

那么我们首先要知道服务器在那才可以,对不对?

所以我们需要用到一条命令:

git remote来进行查看下,如下所示:

git remote

因为我们已知文件地址在那了那里了,所以直接用路径的方式来push即可:

git push origin master

然后AAA用户想同步下即可用到pull来进行同步

但有可能有些朋友是第一次拉取,所以需要加 --allow-unrelated-historeies 即可

git pull origin master --allow-unrelated-histories

他会进入一个vi编辑器,然后用 :q退出即可。。

效果如下所示:

夺命雷公狗----Git---4---多人协作实现的更多相关文章

  1. 夺命雷公狗-----React---12--添加类和样式

    <!DOCTYPE> <html> <head> <meta charset="utf-8"> <title></ ...

  2. 夺命雷公狗-----React---11--添加css样式的方法

    <!DOCTYPE> <html> <head> <meta charset="utf-8"> <title></ ...

  3. 夺命雷公狗-----React---10--组建嵌套进行数据遍历

    先写一个组建... 然后进行嵌套.. <!DOCTYPE html> <html lang="en"> <head> <meta char ...

  4. 夺命雷公狗-----React---9--map数据的遍历

    比如我们要实现的是这种效果: 用这种方法来写,她只能写死在哪,没啥意思,所以我们定义一个数据,然后来测试下map方法对她遍历出来的数据 <!DOCTYPE html> <html l ...

  5. 夺命雷公狗-----React---8--react官方提供的组建实现双向绑定

    首先要引入她.. <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  6. 夺命雷公狗-----React---7--组建的状态props和state

    props:组建初始要渲染的数据,他是不可以改变的 state:组建状态发生改变,调用render重新渲染数据 我们来写一个例子: <!DOCTYPE html> <html lan ...

  7. 夺命雷公狗-----React---6--props多属性的传递

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 夺命雷公狗-----React---5--props对象的传递

    提示:props的值是不可以改变的... <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  9. 夺命雷公狗-----React---4--props变量的传递

    提示:props的值是不可以改变的... <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  10. 夺命雷公狗-----React---3--标签的规则

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. 【水】基于ege的2048

    不要问我ege怎么装 http://tieba.baidu.com/p/2227018541 好,现在我们装好了ege 开始写2048吧 没有算法,单纯模拟,不用讲解——这才叫[水]的含义 界面极度简 ...

  2. GridView,Repeater增加自动序号列

    有三种实现的方式, 第一种方式,直接在Aspx页面GridView模板列中.这种的缺点是到第二页分页时又重新开始了. <Columns> <asp:TemplateField Hea ...

  3. [Android]新版的sdk中新建一个android应用,增加的PlaceholderFragment这个静态类发生的事情

    1,首先发生的是有两个布局xml,一个activity_main.xml,一个是fragment_main.xml一开始没在意,后来仔细看了原来是新功能的fragment概念等于多个场景在这个acti ...

  4. ios中自定义tableView,CollectionView的cell什么时候用nib加载,什么时候用标识重用

    做了一段时间的iOS,在菜鸟的路上还有很长的路要走,把遇到的问题记下来,好记性不如烂笔头. 在项目开发中大家经常会用到tableView和collectionView两个控件,然而在cell的自定义上 ...

  5. mysql_索引原理及优化

    思考: 我们知道mysql最好的数据存储量级是百万级别,是的往往在百万级别或者几十万级别就会出现慢查询(我对慢查询的定义是大于1秒),几年前我所在的一个做pos机支付的联机交易的核心系统组,当时就做过 ...

  6. Android--ListView与数据绑定(Xamarin)

    ListView 控件是一个条目容器, 用于显示集合对象(如数组, List<T>, ObservableCollection<T>等)的每一个条目, 并提供滚动功能. 列表视 ...

  7. python jenkins-api,jira crowd. email-servers

    jenkins  user authentication: http://stackoverflow.com/questions/15411208/authenticate-jenkins-users ...

  8. Canvas 知识体系简单总结

    Canvas 知识体系简单总结 标签(空格分隔): HTML5 Canvas 本文原创,如需转载,请注明出处 前言 知识点零零散散,一个上午整理了一下,内容不多,方便记忆. 本文不是教程,如需教程移步 ...

  9. TCP协议学习笔记(一)首部以及TCP的三次握手连接四次挥手断开

    TCP协议是一种面向连接的.可靠的流协议. 流即不间断的数据结构.这样能够保证接收到数据顺序与发送相同.但是犹如数据间没有间隔,因此在TCP通信中,发送端应用可以在自己所要发送的消息中设置一个标示长度 ...

  10. iOS 将一串字符里面的某个字符全部标志出来

    NSMutableString * mutStr = [NSMutableString stringWithString:@"aaabbbbaaaccc"]; NSString * ...