夺命雷公狗----Git---4---多人协作实现
基本流程:
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---多人协作实现的更多相关文章
- 夺命雷公狗-----React---12--添加类和样式
<!DOCTYPE> <html> <head> <meta charset="utf-8"> <title></ ...
- 夺命雷公狗-----React---11--添加css样式的方法
<!DOCTYPE> <html> <head> <meta charset="utf-8"> <title></ ...
- 夺命雷公狗-----React---10--组建嵌套进行数据遍历
先写一个组建... 然后进行嵌套.. <!DOCTYPE html> <html lang="en"> <head> <meta char ...
- 夺命雷公狗-----React---9--map数据的遍历
比如我们要实现的是这种效果: 用这种方法来写,她只能写死在哪,没啥意思,所以我们定义一个数据,然后来测试下map方法对她遍历出来的数据 <!DOCTYPE html> <html l ...
- 夺命雷公狗-----React---8--react官方提供的组建实现双向绑定
首先要引入她.. <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- 夺命雷公狗-----React---7--组建的状态props和state
props:组建初始要渲染的数据,他是不可以改变的 state:组建状态发生改变,调用render重新渲染数据 我们来写一个例子: <!DOCTYPE html> <html lan ...
- 夺命雷公狗-----React---6--props多属性的传递
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 夺命雷公狗-----React---5--props对象的传递
提示:props的值是不可以改变的... <!DOCTYPE html> <html lang="en"> <head> <meta ch ...
- 夺命雷公狗-----React---4--props变量的传递
提示:props的值是不可以改变的... <!DOCTYPE html> <html lang="en"> <head> <meta ch ...
- 夺命雷公狗-----React---3--标签的规则
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- A*算法——启发式搜索
A*算法 本质还是搜索:加了优化而已 关于这个优化,听到两种说法: 1.剪枝 通过判断预计最少还要几步,加强版剪枝 比如说一个经典剪枝: 如果 步数≥已知最小值 则 剪枝 升级| V 如果 步数+最少 ...
- ejabberd 在eclipse(erlide)中的配置、调试、运行
最近在折腾ejabberd,将ejabberd项目配置到eclipse中进行编译.调试等,现在将过程记下来,希望能帮助到需要的人. 准备 本次环境是在linux中进行,博主的linux是fedora2 ...
- 关于history的Linux命令行
1.使用 HISTTIMEFORMAT 显示时间戳当你从命令行执行 history 命令后,通常只会显示已执行命令的序号和命令本身.如果你想要查看命令历史的时间戳,那么可以执行: # export H ...
- *HDU 1068 二分图
Girls and Boys Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- Learn ZYNQ (9)
创建zybo cluster的spark集群(计算层面): 1.每个节点都是同样的filesystem,mac地址冲突,故: vi ./etc/profile export PATH=/usr/loc ...
- 害死人不偿命的(3n+1)猜想
卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去,最后一定在某一步得到n=1.卡拉兹在1950年的世界数 ...
- 多线程相关------信号量Semaphore
Semaphore用于对资源进行计数.允许一定数量的线程同时访问该资源.可以用于进程间同步 相关函数 CreateSemaphore 创建或打开一个信号量对象 HANDLE WINAPI Create ...
- PHP 字符串的隐式转换规则以及针对包含字母的字符串的递增/递减操作
之前一直对 PHP 中关于字符串的算数运算隐式类型转换规则和递增/递减操作符针对字符串的操作比较模糊,今天总结一下. 一.隐式转换 二进制算术运算符的隐式类型转换规则(http://php.net/m ...
- PHP中GBK和UTF8乱码解决方案
我用的appserv-win32-2.5.10做的环境,装这个包的时候用默认的utf8编码.在写数据库连接文件时,写成: $conn = mysql_connect("$host" ...
- Elasticsearch判断多列存在、bool条件组合查询示例
and符号判断多列存在:{ "filter": { "and": [ { "exists": { ...