git内容补充-Git零基础快速入门-苏玲
https://git-scm.com/book/zh/v2
git历史
集中式版本控制管理:cvs、svn
分布式版本控制管理:git
基本命令
git config --list --global:查看git配置
git init projectname:新建仓库
工作目录-暂存区-版本历史
git add filename:把文件从工作目录放到暂存区 (可被git管理)
git commit -m 'comment':提交到版本历史
git add -u:对于已经被git跟踪的文件,全部add
可以结合使用:git commit -am 'comment'对于已经被git跟踪的文件,全部commit
git status:查看状态
git reset --hard:暂存区的所有变更被清空
重命名文件
- 普通方法
- 在工作目录中重命名:
mv oldfile newfile git add newfilegit rm oldfile
- 在工作目录中重命名:
git mv oldfile newfile:不需要add!可以直接提交
日志
git log:查看当前分支日志
git log --oneline:简洁
git log -n4:最近4次
结合使用:git log -n2 --oneline
git log --all:所有分支
git log --graph图形化
分支
git branch:查看本地分支
结果:* master
git branch -v:查看本地分支信息
结果:* master 74c0f18f merge bug
git branch -r:查看远程分支
git branch -av:查看所有分支信息
git checkout -b branchname 415c58:创建分支
415c58是SHAI ID
git checkout master:切换分支
切换分支时,HEAD内容会发生变化,内容指向当前分支
git cat-file -t 74c0f18:查看类型,结果为commit
-p 查看内容
图形化界面
gitk:打开图形化界面
Patch:某一次的变更集,文件变更内容
Tree:文件目录结构,完整文件内容
.git文件夹
config:配置
/refs:/heads和/tags等
/objects/pack: 2个字符的松散文件夹打包
/objects/1c: 1c是两个字符的文件夹,内容是名为32c7dc4db2e4494cc80a9d417523daf7512c3e的文件。
git cat-file -t 1c32c7dc4db2e4494cc80a9d417523daf7512c3e结果是tree。
git cat-file -p 1c32c7dc4db2e4494cc80a9d417523daf7512c3e查看内容:
040000 tree aa7ea3fa83ad4c362b76a3fd4cf10c5d021b3a2e config
040000 tree a889744e08d65dddfb36db73209caa9a2c29e727 controller
040000 tree 224fda9a113e92e2df3aed4a8b0853b0dbfa28dd management
040000 tree 4d2202faec0f467d70801ccb39e4735647c31785 service
040000 tree 7746f7cc99e6bf1523019361f9837d7ad56c3bbe util
git cat-file -p aa7ea3fa83ad4c362b76a3fd4cf10c5d021b3a2e查看内容:
100644 blob 42da2509ccf8cea1661f5370a20552c0c1f4a895 ManagementSecurityConfig.java
commit、tree和blob
一个commit对应一个tree
tree:保存快照,包含tree和blob
blob:文件内容相同就是同一份blob,可以大大节约存储空间
理解为文件夹和文件
补充:win中 ls ~ dir、 cat ~ type
git内容补充-Git零基础快速入门-苏玲的更多相关文章
- [易学易懂系列|rustlang语言|零基础|快速入门|(17)|装箱crates]
[易学易懂系列|rustlang语言|零基础|快速入门|(17)|装箱crates] 实用知识 装箱crates 我们今天来讲讲装箱技术crates. 什么是crates? 英语翻译是: 英 [kre ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(15)|Unit Testing单元测试]
[易学易懂系列|rustlang语言|零基础|快速入门|(15)] 实用知识 Unit Testing单元测试 我们知道,在现代软件开发的过程中,单元测试对软件的质量极及重要. 今天我们来看看Rust ...
- 零基础快速入门web学习路线(含视频教程)
下面小编专门为广大web学习爱好者汇总了一条完整的自学线路:零基础快速入门web学习路线(含视频教程)(绝对纯干货)适合初学者的最新WEB前端学习路线汇总! 在当下来说web前端开发工程师可谓是高福利 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(25)|实战2:命令行工具minigrep(2)]
[易学易懂系列|rustlang语言|零基础|快速入门|(25)|实战2:命令行工具minigrep(2)] 项目实战 实战2:命令行工具minigrep 我们继续开发我们的minigrep. 我们现 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(24)|实战2:命令行工具minigrep(1)]
[易学易懂系列|rustlang语言|零基础|快速入门|(24)|实战2:命令行工具minigrep(1)] 项目实战 实战2:命令行工具minigrep 有了昨天的基础,我们今天来开始另一个稍微有点 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(20)|错误处理]
[易学易懂系列|rustlang语言|零基础|快速入门|(20)|错误处理] 实用知识 错误处理 我们今天来讲讲Rust中的错误处理. 很多语言都有自己的错误处理方式,比如,java是异常处理机制. ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(4)|借用Borrowing]
[易学易懂系列|rustlang语言|零基础|快速入门|(4)] Borrowing 继续讲讲另一个重要的概念:借用(borrowing), 什么是借用? 我们先来看前一文章([易学易懂系列|rust ...
- 序言 - PHP零基础快速入门
我为什么要写<PHP零基础快速入门>? 原因: PHP 真心简单,适合零基础的人快速入门掌握,身边的人学习一两周上手开发的比比皆是: 市面上的文章或书籍对初学者并不友好,多半枯燥乏味,我相 ...
- 零基础快速入门SpringBoot2.0 (一)
零基础快速入门SpringBoot2.0 (一) 一.SpringBoot2.x依赖环境和版本新特性说明 简介:讲解新版本依赖环境和springboot2新特性概述 1.依赖版本jdk8以上, Spr ...
随机推荐
- java开发学生信息管理系统 源码
开发环境: Windows操作系统开发工具: Eclipse+Jdk+Tomcat+MYSQL数据库 运行效果图 源码及原文链接:https://javadao.xyz/forum.php?mo ...
- SAP 如何看某个TR是否传入了Q或者P系统?
SAP 如何看某个TR是否传入了Q或者P系统? 两种方式可以查询. 1)进入Q系统或者P系统.SE16,看表TPALOG, 输入请求号码, 执行,看记录里的字段TPSTAT_KEY是否为空,如果不为空 ...
- 「Flink」Flink中的时间类型
Flink中的时间类型和窗口是非常重要概念,是学习Flink必须要掌握的两个知识点. Flink中的时间类型 时间类型介绍 Flink流式处理中支持不同类型的时间.分为以下几种: 处理时间 Flink ...
- OpenCV检测Marker位姿
Marker检测采用小觅相机,可以实时检测Marker的位置和姿态,效果如下: 参考代码如下: #include "pch.h" #include <Eigen/Dense& ...
- 【原创】关于pyinstaller打包的程序执行出错问题,pyinstaller3.5只支持matplotlib3.0.2已经解决
之前,在用pyinstaller打包一个python程序时没有问题,后来不知道什么原因,再打包时出现了所谓的pyinstaller打包报错: RecursionError: maximum recur ...
- watch实现监听Vuex状态监听(利用computed)
Vuex 通过 store 选项,提供了一种机制将状态从根组件"注入"到每一个子组件中(需调用 Vue.use(Vuex)):通过在根实例中注册 store 选项,该 store ...
- jmeter导入jmx文件报错:missing class com.thoughtworks.xstream.converters.ConversionException
有的时候我们会参考别人的jmx文件,但是在导入的时候会报错如下图: 实际上是告诉我们缺少jar包所引起的,下载对应jar包放到jmeter安装目录对应的lib/ext下就可以了,如下图: jmeter ...
- Android 调试桥 (adb) 是 命令行命令--官方拷贝过来的,留作自己查看
Android 调试桥 (adb) 是一种功能多样的命令行工具,可让您与设备进行通信.adb 命令便于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令 ...
- 0.96寸OLED显示屏驱动手册(SSD1306)
MCU IIC接口 IIC通信接口由从地址位SA0,IIC总线数据信号SDA(输出SDAout/D2和输入SDAin /D1)和IIC总线时钟信号SCL(D0).不管是数据线还是时钟线都需要连接上拉电 ...
- 【python基础语法】第7天作业练习题
import keyword ''' # 第一题:简单题 1.什么是全局变量? 2.什么是局部变量? 3.函数内部如何修改全局变量(如何声明全局变量 )? 4.写出已经学过的所有python关键字,分 ...