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. 使用PCAST检测散度以比较GPU和CPU结果

    使用PCAST检测散度以比较GPU和CPU结果 并行编译器辅助软件测试(PCAST)是英伟达HPC FORTRAN.C++和C编译器中的一个特性.PCAST有两个用例.一个新的处理器或新的编译程序的部 ...

  2. algorithm头文件下的常用函数

    algorithm头文件常用高效函数 max() max(a, b)返回a和b中的最大值,参数必须是两个(可以是浮点型). 1 #include <iostream> 2 #include ...

  3. python接口自动化之读取excel表的数据(使用openpyxl模块)

    1.安装openpyxl:pip install openpyxl 2.基础知识,直接上代码 import openpyxl #导入模块 wd2=openpyxl.load_workbook('stu ...

  4. 《python网络数据采集》笔记2

    1.网页表单与登陆窗口 Requests 库擅长处理那些复杂的 HTTP 请求.cookie.header(响应头和请求头)等内容. 1)表单提交 import requests #字段 params ...

  5. Java SSM框架理论知识

    一.Spring理论知识 1.Spring 在ssm中起什么作用? Spring:轻量级框架 作用:Bean工厂,用来管理Bean的生命周期和框架集成. 两大核心:1.IOC/DI(控制反转/依赖注入 ...

  6. 音视频点播服务基础系列(Fmpeg常用命令)

    前言 公司业务中有一些场景需要用到服务端音视频剪辑技术,最开始为了快速上线使用的是某公有云的商用解决方案,但由于费用太高所以我们团队经过一个星期的冲刺,给出了一个FFmpeg+Serverless的解 ...

  7. Message、Handler、Message Queue、Looper 之间的关系

    单线程模型中Message.Handler.Message Queue.Looper之间的关系 1.Message Message即为消息,可以理解为线程间交流的信息.处理数据后台线程需要更新UI,你 ...

  8. 理解vertical-align

    vertical-align 支持的属性值及组成 inherit 线类baseline, top, middle, bottom 文本类text-top, text-bottom 上标下标类sub, ...

  9. 用Java语言编写的迷宫小游戏软件

    可查看本项目的github 源码链接,撒娇打滚求 star 哦~~ღ( ´・ᴗ・ ` )比心 本仓库代码是经过 eclipse 编译运行过的,一般情况下将本仓库代码下载下来之后,使用 eclipse ...

  10. scRNAseq benchmark 学习笔记

    背景 把早年没填完的坑(单细胞测序的细胞类型鉴别)给重新拾起来 其Github描述的基本情况: 作者并不对单个分类器进行说明,统一包装在benchmark工程里,还建立了docker容器 但说明了在s ...