1,基本业务逻辑(假设针对index.html文件中内容):

  1,在init版本库之前已写好开头部分:index

    对index进行git init版本库: 进入到文件夹中,git init

    git add .      ===》     git commit -m “v1”

  2,修改index.html中的内容,增加news

    git add .      ===》     git commit -m “v2”

  3,修改index.html中的内容,增加blogs

    git add .      ===》     git commit -m “v3”

  4,发生事件:blogs功能需要取消

    git reset --hard <版本号>

  5,经过协调,blogs功能可以重新上线

    git reflog     ===》     git reset --hard <版本号>

  6,为了开发一个商城功能,开始分支

    git branch dev1

  7,切换分支到dev1

    git checkout dev1

  8,开发到中途,完成50%,紧急需要修复blogs功能的bug

    在dev1分支上add和commit

    git checkout master      ===》git branch master-bug1

  9,切换到master-bug1分支上修改

    修改后add和commit

  10,切换到master主分支上,将master-bug1合并

    git merge master-bug1

  11,切换到dev1分支上,继续开发;开发完后与主分支合并

    切换到主分支   ===》   git merge dev1

  12,产生冲突(两支分支的父节点要一样。不然就会出现冲突)

    手动打开黄色感叹号的文件手动修改

      <<<<<<<到=======是在当前分支合并之前的文件内容
      =======到>>>>>>>是其他分支的代码内容
      需要删除其中一个版本,符号也要一并删除

    然后add和commit

  13,解决完成后,没问题了之后,就可以删除master-bug1分支

    git branch -d master-bug1

  

  14,如果回到家里如何将项目同步过来了,使用github.com仓库来实现

    1,注册github.com用户名和邮件

  15,在github.com上新建空仓库,如果项目已经做了一部分,就创建空目录;如果不是空仓库,先clone在合并

  16,在本地目录中对仓库地址增加别名

    git remote add origin github仓库地址

  17,在把本地目录中的项目推上github.com仓库

    git push -u origin 分支

  18,在另一台电脑上(安装好git),克隆下来(会克隆所有的分支)

    git clone 远程版本库地址

  

  19,rebase

    1,第一种情况:只在同一分支上。

      git rebase -i HEAD~3  (表示从HEAD开始前3条记录合并)

     2,第二种情况:合并记录时,有不同分支,将该分支强插入另一分支

      分别在master和dev分支上commit文件

      在dev分支上进行rebase : git rebase master

      然后切回master分支:git merge dev

     3,第三种情况:在公司开发了v1代码,但是没有push到云仓库,在家里push了v2代码,再在公司pull v2代码时会产生分叉,要解决这种分叉:

      git fetch origin dev

      git rebase origin/dev

      注意:如果产生冲突,那么就需要解决冲突,然后git add xxx ,但是不能执行commit(之前没意识到这个错误,导致出现一些列问题),而是按照提示直接执行git rebase --continue

  20,beyond compare工具的使用

    1,安装

    2,使用git命令进行配置,使它能用git命令启动起来

      

  21,多人协同

    1,主分支master——生产环境

    2,test分支——测试环境

    3,dev分支——开发环境

    4,每个开发人员都有各自的分支——pdev

    5,每个独立功能狗友各自的分支——fdev

  22,在github上创建organization

   23,git tag -a v1 -m "第一版"

    git push --tags

   24,在github上查看权限和查看项目的权限,以及邀请其他开发者上来开发,加入到组织中

    第25集

   25,git checkout -b dev

      git push origin dev

   26,让其他开发者通过clone链接clone,然后对dev分支进行创建新分支dev1分支,并进行开发。

   27,code review

    1,

    

    

  

学习Git的基本业务逻辑的更多相关文章

  1. [Prodinner项目]学习分享_第三部分_Service层(业务逻辑层)

    前两节讲到怎样生成一个Model和怎样将Model映射到数据库,这一节将讲到业务逻辑层,也就是Service层. 1.Prodinner架构已经构建好的,基本的增删改查. 假设,我现在想操作第二节中讲 ...

  2. Beego 学习笔记三:Beego业务逻辑

    1>     打开main.go文件,查看代码 点击快捷键F12,进入beego.go文件,查看代码 2>     打开router.go文件,查看路由 3>     打开defau ...

  3. 从零开始,搭建博客系统MVC5+EF6搭建框架(1),EF Code frist、实现泛型数据仓储以及业务逻辑

    前言      从上篇30岁找份程序员的工作(伪程序员的独白),文章开始,我说过我要用我自学的技术,来搭建一个博客系统,也希望大家给点意见,另外我很感谢博客园的各位朋友们,对我那篇算是自我阶段总结文章 ...

  4. 问题(bug)确实不在代码逻辑上面,往往是配置、权限或者业务逻辑之外的地方(转)

    不能说所有的bug都是纸老虎,但往往那种看似很奇葩的bug,导致的原因确实很简单,烦了你一段时间,找到真相又让你忍不住一笑.什么是奇葩的bug呢.我的定义是:代码逻辑都一样,但在A处是好的,到了B处就 ...

  5. Odoo 12 开发手册指南(八)—— 业务逻辑 – 业务流程的支持

    在前面的文章中,我们学习了模型层.如何创建应用数据结构以及如何使用 ORM API 来存储查看数据.本文中我们将利用前面所学的模型和记录集知识实现应用中常用的业务逻辑模式. 本文的主要内容有: 以文件 ...

  6. 一步一步实现web程序信息管理系统之三----登陆业务逻辑实现(验证码功能+参数获取)

    本篇紧接着上一篇文章[一步一步实现web程序信息管理系统之二----后台框架实现跳转登陆页面] 验证码功能 一般验证码功能实现方式为,前端界面访问一个url请求,后端服务代码生成一个图片流返回至浏览器 ...

  7. iOS开发---业务逻辑

    iOS开发---业务逻辑   1. 业务逻辑 iOS的app开发的最终目的是要让用户使用, 用户使用app完成自己的事就是业务逻辑, 业务逻辑的是最显眼开发工作.但是业务逻辑对于开发任务来说, 只是露 ...

  8. 第八章 Odoo 12开发之业务逻辑 - 业务流程的支持

    在前面的文章中,我们学习了模型层.如何创建应用数据结构以及如何使用 ORM API 来存储查看数据.本文中我们将利用前面所学的模型和记录集知识实现应用中常用的业务逻辑模式. 本文的主要内容有: 以文件 ...

  9. Netty耗时的业务逻辑应该写在哪儿,有什么注意事项?

    更多技术分享可关注我 前言 Netty以高性能著称,但是在实际使用中,不可避免会遇到耗时的业务逻辑,那么这些耗时操作应该写在哪儿呢,有什么注意的坑吗?本篇文章将一一总结. Netty线程调度模型回顾 ...

随机推荐

  1. TensorFlow实现多层感知机函数逼近

    TensorFlow实现多层感知机函数逼近 准备工作 对于函数逼近,这里的损失函数是 MSE.输入应该归一化,隐藏层是 ReLU,输出层最好是 Sigmoid. 下面是如何使用 MLP 进行函数逼近的 ...

  2. C#中使用swagger小技巧

    C#中使用swagger小技巧 swaggerUI显示的接口内容主要用于开发阶段便于与前端联调,不适合发布到对外的站点. 有以下两种方式,让接口不显示在SwaggerUI中 1.使用属性 [ApiEx ...

  3. postman之将获取响应数据-创建环境变量,用于不同的接口调用

    应用场景: token的获取,用于不同接口的取值 在test中进行如下设置: var jd = pm.response.json(); var access_token = jd.access_tok ...

  4. 深入理解java虚拟机笔记Chapter7

    虚拟机类的加载机制 概述 虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类的加载机制. 类加载的时机 J ...

  5. python operator操作符函数

    本模块主要包括一些Python内部操作符对应的函数.这些函数主要分为几类:对象比较.逻辑比较.算术运算和序列操作.

  6. 带你从头到尾捋一遍MySQL索引结构

    索性这次把数据库中最核心的也是最难搞懂的内容,也就是索引,分享给大家. 这篇博客我会谈谈对于索引结构我自己的看法,以及分享如何从零开始一层一层向上最终理解索引结构. 从一个简单的表开始 create ...

  7. TestNG 组测试

    方法分组测试 1. 给@Test注解后面加groups参数,如 @Test(groups = "groupa") 2. 可以添加@BeforeGroups和@AfterGroups ...

  8. 回顾Games101图形学(一)几何变换中一些公式的推导

    回顾Games101 chatper1 - 6 前言 本文只写回顾后重新加深认识的知识 透视除法的意义 经过MVP矩阵之后,将模型空间下某点的坐标,转换成了裁剪空间下的坐标,此时因为裁剪空间的范围是x ...

  9. Sai学习笔记

    颜色模块的功能介绍 色轮 RGB滑块 HSV滑块(常用) H:色相 S:纯度 V:明度 中间色条,主要用来混色 颜料盒 调色板 选择工具的使用 选择框 快捷键:Ctrl+D 套索 魔棒 图文工具使用 ...

  10. 温故知新,CSharp遇见异步编程(Async/Await),聊聊异步编程最佳做法

    什么是异步编程(Async/Await) Async/Await本质上是通过编译器实现的语法糖,它让我们能够轻松的写出简洁.易懂.易维护的异步代码. Async/Await是C# 5引入的关键字,用以 ...