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 ...
随机推荐
- linux使用和基础操作
1.linux系统初使用 linux有图形终端和字符终端,关于linux学习以字符终端为主,即命令行操作: [root@centos7 ~]#runlevel 查看当前工作模式N 3 //3为字符终端 ...
- IO流之File对象
File类: 用来将文件或者文件夹封装成对象 方便对文件与文件夹的属性等信息进行操作(因为流只能操作文件中的数据) File对象可以作为参考传递给流的构造函数 上下级文件夹之间使用分隔符分开: 在Wi ...
- Shiro -- (四) 数据库支持
主要就是JdbcRealm这个类 先看一下部分源码: 先建表:users(用户名 / 密码).user_roles(用户 / 角色).roles_permissions(角色 / 权限),并且往use ...
- Python实现进度条的4种方式
这里只列举了部分方法,其他方法或python库暂时还没使用到 马蜂窝刷粉丝[微信:156150954] 1.不用库,直接打印: 代码样例: import time #demo1 def process ...
- python3-cookbook笔记:第十章 模块与包
python3-cookbook中每个小节以问题.解决方案和讨论三个部分探讨了Python3在某类问题中的最优解决方式,或者说是探讨Python3本身的数据结构.函数.类等特性在某类问题上如何更好地使 ...
- BFC的语法
先说一下什么是BFC(Block Formatting Contexts) BFC:块级格式化上下文(独立的渲染区).通俗的说是块级元素布局逻辑或规则,想要触发BFC就要是块级元素,要不把它转为块级元 ...
- 泡泡后台Couchbase缓存使用经验分享
一.导读 爱奇艺的社交业务“泡泡”,拥有日活用户6千万+,后台系统每日高峰期间接口QPS可以达到80K+,与视频业务的主要区别是泡泡业务更多地引入了与用户互动相关的数据,读.写的量均很大.无论是庞大的 ...
- robotframework报错
问题一:RobotFramework RIDE在运行测试用例时无法打开谷歌浏览器,原因是1.安装ride时没有安装chromedriver驱动 2.驱动版本与本机浏览器不兼容 解决方法:在pyth ...
- 树莓派点亮LED灯需要几行代码?3行。小孩子都能学会
目录 点亮LED灯 硬件连接 代码 闪烁的LED灯 呼吸灯 其他 点亮LED灯 硬件连接 找一个LED灯,连接如上图,注意长短引脚,经过这些年的狂轰乱炸,大家对于这个应该不漠视,毕竟Arduino都进 ...
- centos7添加网卡
centos7添加桥接网卡 1.使用ip a 命令查看是否有新加的网卡 如上图新网卡为ens36,默认分配ip为192.168.3.14 2. 使用nmcli conn 命令查看新网卡的uuid 3. ...