Git的存储方式:
元空间的存储方式
SVN存储方式:
文档数据库存储类似于 K -V存储
文件版本迭代 Copy
-------------------------------------------------------------------------------- GIt : 分布式管理系统
Svn: 集中式管理系统
每一个项目包含一个本地仓库,使用 GIT INIT 操作初始化一个GIT 仓库 SVN 只有一个远程仓库
GIT 可以每一个项目对应一个远程仓库
--------------------------------------------------------------------------------
GIT 常用命令
git init {本地仓库名字} 创建一个仓库{} 可选,若不指定的话,在当前目录新建 GIT 从远程库Clone项目 GIT Clone [远程库地址] GIT add {filename} 将文件添加到暂存区 GIT add -A 将工作区所有的文件添加至暂存区 GIT rm --cached target -r 将指定目录移出暂存区 GIT commit -am "快速提交所有的文件到本地库" git commit [文件名] -m "提交备注信息" GIT Branch -avv 查看本地分支 查看本地分支和远程分支 查看本地所有分支和远程分支的对应关系 GIt branch [新分支的名字] git 基于当前分支创建分支 git branch [新分支的名字] [已经存在的分支] git 基于已经存在的分支创建分支 git branch [新分支的名字] [提交的Hash码] git 基于已经提交的新建分支 git branch -d [分支名字] git 删除分支 git checkout [分支名字] git 切换分支,需要在本地库提交的情况下切换 git remote [-v] #查看远程配置 git remote add origin http:xxx.xxx #添加远程地址 git remote remove origin #删除远程地址 git push --set-upstream origin master #上传新分支至远程 git branch --track --set-upstream-to=origin/test test #将本地分支与远程建立关联 GIT 底层的存储是K-V 进行存储的,基于一个文件生成Hash Key,所以一个文件重复提交的话版本也可以保持一致 GIt的每一个分支都关联了一个树对象, 存储是以树状结构进行存储的 树对象 提交对象 一次提交即为当前版本的一个快照,该快照就是通过提交对像保存,其存储的内容为:一个顶级树对象、上一次提交的对像啥希、提交者用户名及邮
箱、提交时间戳、提交评论。 一个内容对象 ==> 存储了文件内容
一个树对像 ==> 存储了文件名及内容对像的key
一个提交对像 ==> 存储了树对像的key 及提交评论。
--------------------------------------------------------------------------------
GIT引用 当我们执行 git branch {branchName} 时创建了一个分支,其本质就是在git 基于指定提交创建了一个引用文件,保存在 .git\refs\heads\ 下。
l 演示分支的创建
git branch dev
cat.git\refs\heads\dev
git 总共 有三种类型的引用:
1. 分支引用
2. 远程分支引用
3. 标签引用 #查询比较两个版本
git log master..experiment #版本提交历史网络
git log --pretty=format:'%h %s' --graph #查看分支树
git cat-file -p master^{tree} --------------------------------------------------------------------------------
Tag 管理
标签也是基于提交创建的 但是创建的节点也是只读状态的
#查看当前
git tag
#创建分支
git tag <tag name> <branch name>
#删除分支
git tag -d <tag name> --------------------------------------------------------------------------------
GIT 的日志
6、日志管理 #查看当前分支下所有提交日志
git log
#查看当前分支下所有提交日志
git log {branch}
# 单行显示日志
git log --oneline
# 比较两个版本的区别
git log master..experiment #以图表的方式显示提交合并网络
git log --pretty=format:'%h %s' --graph

  

GIT笔记汇总的更多相关文章

  1. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

  2. MySQL笔记汇总

    [目录] MySQL笔记汇总 一.mysql简介 数据简介 结构化查询语言 二.mysql命令行操作 三.数据库(表)更改 表相关 字段相关 索引相关 表引擎操作 四.数据库类型 数字型 字符串型 日 ...

  3. NGUI学习笔记汇总

    NGUI学习笔记汇总,适用于NGUI2.x,NGUI3.x 一.NGUI的直接用法 1. Attach a Collider:表示为NGUI的某些物体添加碰撞器,如果界面是用NGUI做的,只能这样添加 ...

  4. 读书笔记汇总 --- 用Python写网络爬虫

    本系列记录并分享:学习利用Python写网络爬虫的过程. 书目信息 Link 书名: 用Python写网络爬虫 作者: [澳]理查德 劳森(Richard Lawson) 原版名称: web scra ...

  5. 常用Git命令汇总

    常用Git命令汇总 跟着R哥来到了新公司(一个从硬件向互联网转型中的公司),新公司以前的代码基本是使用SVN做版本控制,甚至有些代码没有做版本控制,所以R哥叫HG做了一次Git分享,准备把公司所有的代 ...

  6. Git 笔记三 Git的初步使用

    Git 笔记三 Git的初步使用 在上一篇中,学习了如何配置Git环境,这一篇,开始学习Git的初步使用.Git的初步使用还是很简单的.总体上知道git init, git clone, git ad ...

  7. Git 笔记二-Git安装与初始配置

    git 笔记二-Git安装与初始配置 Git的安装 由于我日常生活和工作基本上都是在Windows上,因此此处只说windows上的安装.Windows上的安装和其他程序一样,只需要到http://g ...

  8. Git 笔记一 Git简介

    git 笔记一 什么是版本控制 所谓版本控制就是记录对文件的修改记录,这样以后就能回退到需要的 版本.比如你对一段代码进行了几次修改,有几次修改不想要了,如果 使用了版本控制,就可以回退到未做这些修改 ...

  9. ST官方翻译的中文应用笔记汇总

    ST官方翻译的中文应用笔记汇总 http://www.51hei.com/stm32/3382.html 官方中文AN:AN3116:STM32? 的 ADC 模式及其应用AN1015:用于提高微控制 ...

  10. Git命令汇总(补充篇)

    上一篇<Git命令汇总基础篇>总结了使用Git的基本命令,这一篇作为补充主要给大家讲一些平时使用中的技巧和总结 . 学会了这些命令,已经基本解决了使用Git中大部分问题. 1.gitign ...

随机推荐

  1. Performance API不完全使用指北

    本教程解释了如何使用Performance API来记录真实用户访问你的应用程序的统计数据. 使用浏览器的DevTools来评估web应用性能是很有用的,但要复现现实世界的使用情况并不容易.因为人们在 ...

  2. 详谈pytest中的xfail

    详谈pytest中的xfail 原文链接: https://docs.pytest.org/en/7.2.x/how-to/skipping.html 链接中详细阐述了skip和xfail两种情况 x ...

  3. 安装kali2021.1系统

    基本安装 下载地址:Downloads | Kali Linux 去官网下载,会得到kali2021.1的镜像和哈希值 打开VMware软件,新建虚拟机........................ ...

  4. 安卓逆向 ARM基础篇

    1.ARM  与 Andorid 的关系 android 的操作系统是 LINUX 内核 LINux又是ARM 2.ARM汇编规范 3.ARM指令格式 ARM常用指令开始 1.ARM 的跳转指令 PC ...

  5. Vue框架:7、Node环境搭建,Vue-cli,es6导出、导入语法,跨域问题解决方法,小练习

    前端开发之Vue框架 一.Node环境搭建 什么是Node或NodeJS: node js是一门后端语言 JavaScript只能运行在浏览器中,因为浏览器中有他的解释器环境 基于谷歌浏览器的v8引擎 ...

  6. 软件教程 | Jupyter&stata之stata_kernel攻略

    ![](http://mdimg.yxj1010.top/xlbxs_ydt2.png) 目录: 目录 一.什么是stata_kernel 1. stata_kernel简介 2. 为什么要使用sta ...

  7. grequest案例对比requests案例

    grequets和requests案例各一个,使用上对比: import grequests import requests headers = { "content-type": ...

  8. 早期SpA患者髋关节的受累发生率

    早期SpA患者髋关节的受累发生率 EULAR2015, PresentID: FRI0236 原文 译文 How often are hip joints involved in patients w ...

  9. Java处理正则匹配卡死(正则回溯问题)

    目录 背景 项目现场问题 问题跟踪 优化方案 处理正则问题 使用子线程来匹配正则实现 监控线程实现 最优选择方案 参考文章 正则匹配卡死怎么来的? 背景 背景:这次问题的背景是项目上遇到了,在使用正则 ...

  10. nginx编译安装以及常用参数详解

    1 基于ansible role实现编译安装nginx 利用ansible控制端10.0.0.8机器,在被控制端10.0.0.18上部署nginx 首先打通ansible控制端与被控制端的基于key验 ...