版本控制

①git log [parameter] 查看版本记录(使用Hash值指向相关信息,只显示之前的版本)

常用参数:
–pretty = oneline (或 --oneline,缩短Hash值) 以一行的格式进行显示
git reflog 以一行格式查看版本记录,可显示出切换版本需要移动的步数:HEAD@{步数}

②移动HEAD指针进行版本的变动
基于索引值操作:git reset --hard 索引值(Hash值,可使用局部值(唯一确定),可配合git reflog)
使用异或符号^:git reset --hard HEAD^ (一个^代表回退一个版本)
使用~number :git reset --hard HEAD~n (表示回退n个版本)


此处可以看出git reflog 能够显示出之前操作的所有版本信息
git log --oneline 只能显示当前指针所在位置之前的操作内容

reset常用参数:
–soft 仅仅移动HEAD指针
–mixed 移动HEAD指针、重置暂存区
–hard 移动HEAD指针、重置暂存区、重置工作区
TIPS:可以找回已经提交的删除的文件(提交删除操作(HEAD^)和不提交操作(HEAD)都能找回)

③git diff 文件名:将工作区的文件和暂存区的文件进行比较
git diff HEAD(历史版本)文件名:将工作区的文件和本地库历史记录比较
由于上一步我将head指针移动,只修改了暂存区,所以测试一下区别

PS:不带文件名,可比较所有文件

分支管理

master:主分支
其它常用分支:
feature_(功能分支):用于开发一些新的功能,然后合并到主分支,多个功能互不干扰
hot_fix(热修复):服务器不停止,修复一些bug
能够同时推进多个功能开发,提高开发效率。
指令:
①git branch -v 查看所有分支
②git branch 分支名 创建新的分支
③git checkout 分支名 切换分支

可以看出:新分支和master分支的指针指向同一个版本

④git merge 分支名 将其它分支合并到当前分支
TIPS:分支冲突:两个要合并的分支在同一位置做了不同的修改,系统不知道以哪个修改为主
解决:需要直接修改产生冲突的文件,然后进行跟踪,提交(此时不需要指定文件名)

此时可观察到两个分支的显示:即发生了冲突
可直接对冲突文件进行修改

然后添加到暂存区进行提交

此时可发现分支变为一个

Git本地库版本控制和分支管理相关推荐

  1. Git配置、版本控制与分支管理

    文章目录 一.创建版本库 1. 配置git环境 二.时光机穿梭 1. 版本回退 2. 撤销修改 3. 删除文件 三.分支管理 1. 创建与合并分支 2. 解决冲突 3. Bug分支 4. 多人协作 参 ...

  2. git版本控制以及分支管理

    git版本控制以及分支管理--一起乘坐时光机 四.深度剖析 一.版本控制---时光机穿梭 1.熟悉版本 2.版本回退 3.管理修改 1.管理修改以及理解工作的原理 2.撤销修改的内容 3.删除文件 二 ...

  3. Git笔记(13) 分支管理

    Git笔记(13) 分支管理 1. 分支管理工具 2. 查看分支列表 3. 查看分支最后一次提交 3. 查看已合并分支列表 4. 查看未合并分支列表 1. 分支管理工具 在 Git学习笔记(12) 分 ...

  4. Git版本控制__分支管理

    文章目录 Git基本操作 1. git 两大特点 2. 安装与配置 3. 创建一个版本库 4.版本创建与回退 4.1 使用 4.2 工作区和版本库 工作区 ( Working Directory ) ...

  5. git学习(三)分支管理

    分支管理 git学习参考 廖雪峰官方网站 git基本操作,一篇文章就够了! 一.分支作用 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交 ...

  6. Git之深入解析Git的杀手级特性·分支管理与分支变基的开发工作流以及远程分支的跟踪

    一.Git 分支简介 几乎所有的版本控制系统都以某种形式支持分支,使用分支意味着可以把工作从开发主线上分离开来,以免影响开发主线.在很多版本控制系统中,这是一个略微低效的过程,常常需要完全创建一个源代 ...

  7. Git学习05 --分支管理02

    1.冲突 产生冲突后,查看readme.txt   可以看到冲突内容 <<<<<<< ======= >>>>>>> ...

  8. git 教程(12)--分支管理

    分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平行宇宙合并 ...

  9. 史上最简单的git教程|第九篇:分支管理工具

    在上一篇我们讲到了如何创建合并分支.如何解决冲突以及如何删除分支,那么接下来我们将讲到一些常用的分支管理工具. 获取所有分支列表: $ git branch * b1master 可以看书一共有两个分 ...

最新文章

  1. rust实战入门到进阶(3)
  2. 公子龙:我读研期间通过实习和比赛收入五十万
  3. html项目列表页面源码,HTML 列表
  4. unubtu16.04解决etc文件误改导致无法使用sudo等指令问题
  5. 在Oracle DG Standby库上启用flashback database功能
  6. 05NumPy--5.4随机数
  7. 蓝桥杯2019年第十届C/C++省赛C组第四题-质数
  8. Linux之Inode详解 作者:羽飞博客 http://www.opsers.org/
  9. office visio 替代_10个Linux中受欢迎的开源Visio替代品
  10. html批量处理图片尺寸,如何批量修改图片尺寸
  11. 【axios】get和post请求用法
  12. 《富爸爸穷爸爸》书摘-为什么要教授财务知识
  13. linux服务器系统时间和bios时间,Linux系统时间, 硬件BIOS时间的校准与同步
  14. 入职腾讯第九年,我辞职了!!!
  15. 5.21 ticker的使用
  16. 漫画 | 芯片战争50年,Intel为什么干不掉AMD?
  17. iimap服务器没有响应,解决imap被vimIM和谐掉的问题
  18. 匿名内部类的定义格式
  19. 赛维时代IPO过会:第一季净利降71% 出口跨境电商热度降温
  20. 【浅墨Unity3D Shader编程】之一 游戏场景的创建 第一个Shader的书写

热门文章

  1. markdown编辑器基础语法总结
  2. Coding:文件网盘高速直链下载无限空间
  3. 【Java】编写Java GUI应用程序,完成从键盘输入矩形的长和宽,求矩形的周长和面积并输出结果的功能...
  4. 分布式团队_我们说的意思是:我们是一个分布式优先团队
  5. iphone闪退修复工具_iPhone更新iOS 13出现程序闪退?大家不妨试试这个方法来解决问题...
  6. 99%的人都会遇到的Python “用户环境”问题
  7. Python爬虫教程:验证码的爬取和识别详解
  8. 用 Python 下载抖音无水印视频
  9. 配置window下python3环境
  10. Hive 的窗口函数