Git—基础知识及常用命令(系列一)
1、集中式和分布式区别
1.1 集中式
集中式版本控制系统,版本库是集中存放在中央服务器的。用户都是用自己的电脑,要先从中央服务器取得最新的版本,然后coding,最后把代码推送到中央服务器。
集中式版本控制系统的弊端是需要联网工作;
1.2 分布式
分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,coding时无需联网,版本库就在各个用户的本地电脑上。
相比于集中式版本控制,安全性更高,每个用户电脑都有完整的版本库。
Git拥有强大的分支管理,这是CVS、SVN不具备的优势。
2、git的安装和使用
2.1 git安装
(1)linux下:sudo apt-get install git
(2)windows下:安装gitbush
2.2 git使用
(1)创建工作区
在本地电脑里创建空目录,即为工作区,这个目录里的所有文件都可以被git管理,每个文件的修改、删除都能够被git追踪,便于后期追踪历史记录,在某个时刻可以还原;
(2)使用git管理仓库(版本库)
git init
在该仓库中会多一个.git目录;(如果不需要git管理,则删除这个目录就可以实现)
注意:
若在linux看不到这个目录,可以使用ls -ah查看这个隐藏的目录;
(3)git改动
版本控制系统无法追踪图片、视频等二进制文件,且Microsorf的word格式的也是二进制格式,所以也无法追踪,只能知道其大小的改变。版本控制系统只能追踪文本文件的改动,如txt文件。
2.3 git操作案例
如在git仓库中添加一个test.txt文件
2.3.1 将文件添加到仓库:
git add test.txt
2.3.2 将文件提交到仓库:
git commit -m “提交test.txt文件”
-m后面输入的是本次提交的说明,便于后期查看提交记录;
注意:
添加文件到Git仓库,分两步:
使用命令git add <file>
,注意,可反复多次使用,添加多个文件也可以使用git add -u
一次性添加追踪的文件;
使用命令git commit -m <message>
,完成。
2.3.3 查看提交历史记录
git log
git log --pretty=oneline
每提交一个版本,git就会将它们自动串成一条时间线;
2.3.4 查看文件区别
git diff <filename>
查看工作区和版本库里最新版本的区别:
git diff HEAD -- <filename>
2.3.5 查看某次提交修改不同之处
git show <commit-hash-id>
2.4 git log使用
git log
2.4.1 查看特定的人的提交记录
git log –author=xiaoming
2.4.2 压缩显示log
一个压缩后的每一条记录只占一行的输出:
git log –pretty=oneline
2.4.3 查看文件改变
git log --name-status
2.4.5 简略查看日志
git log --graph --pretty=oneline --abbrev-commit
3.2 回退版本
(1)使用git log查看提交记录进行回退
git reset --hard xxx
若要回退到上一个版本:
git reset --hard HEAD^
或者使用commit-id(前几位即可)
git reset --hard commit-id
(2)若想要恢复之前的回退
使用git reflog
查看commit-id
Git—基础知识及常用命令(系列一)相关推荐
- Git基础知识与常用命令
一:相关概念: 1:工作区(Working Directory): 就是你在电脑里能看到的目录 2:版本库(Repository): 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. ...
- 【Java从0到架构师】Linux 基础知识、常用命令
Linux 基础知识.常用命令 Linux 基础知识 内核和发行版 常见的 Linux 发行版 Linux 的应用领域 Linux 与 Windows 的区别 Linux 常用命令 *系统目录结构 s ...
- Git的基础知识和常用命令
源代码的管理从最原始的手工备份到后来的CVS, SVN和GIT的应用,经历了一个漫长的过程.GIT大概是除了linux内核以外, Linus Torvalds对信息技术发展的另一重要贡献啦. GITH ...
- Redis基础知识+安装+常用命令使用
Redis NoSql概述 为什么用NoSql 单机MySQL的时代! 上古90年代,更多的是静态网页,动态交互类型的网站不多.一个基本网站访问量一般不会太大,单个数据库可以轻松应付. 现如今的大数据 ...
- Linux 1:基础知识和常用命令
文章目录 一.Linux基础 1. 为什么要学习Linux? 2. Linux学习方法 二.Linux历史介绍 三.Linux简介 1. Linux和window系统有什么区别? 2. Linux的内 ...
- zookeeper基础知识以及常用命令
zookeeper简介 1.中间件,提供协调服务. 2.作用于分布式系统,发挥其优势,可以为大数据服务. 3.支持java,提供Java和c语言的客户端API. 什么是分布式系统 1.很多台计算机组成 ...
- Linux基础知识、常用命令
一.Linux文件与目录管理 绝对路径: 路径的写法,由根目录 / 写起,例如: /usr/share/doc 这个目录. 相对路径: 路径的写法,不是由 / 写起,例如由 /usr/share/do ...
- Redis(三):Redis基础知识与常用命令
1.基础命令 Redis默认有16个数据库,用的是第0个数据库,可以使用select进行切换数据库,使用DBSIZE查看DB大小(只针对当前数据库). 使用keys * 查看当前数据库下所有的key, ...
- Git基础知识、使用命令
git教程 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743256 ...
最新文章
- #423 Div2 D
- 2017-10-5模拟赛T2 小Z爱排序(sorting.*)
- JSON序列化(stringify)对象时排除某些属性的两种方法
- Tomcat源码分析(九)--Session管理
- 如何运用并行编程Parallel提升任务执行效率
- 《Groovy语言规范》-语法(一)
- asp.net配置web.config发电子邮件详解
- Unity 自动化打包XCode工程
- 次世代贴图材质制作的提示和秘籍
- “信号声源定位实验”
- Tabby使用之:中文乱码问题
- 使用EJS脚本实现花生壳动态域名更新服务(二)
- 自学 R 语言的十条干货技巧分享
- sourcetree clone很大的项目
- OpenAI Whisper and ChatGPT 语音助手
- GNU Make 使用手册(于凤昌中译版)
- 【毕业设计】Stm32单片机的音乐播放器设计 - 物联网 嵌入式
- spring MVC 获取servletContext,实现文件下载功能
- Android逆向writeup,【技术分享】春秋杯逆向第一题writeup
- Yolo-FastestV2在树莓派4B上的MNN移植记录
热门文章
- 基于docker在Ubuntu上搭建TensorFlow-GPU计算环境
- linux 内核设备管理模型sysfs(入门篇)
- CMake使用介绍(2)
- 3-5比较和Fancy Indexing
- 安卓手机备份_备份安卓手机中的APK安装文件?小编这儿有4种方法
- JavaScript 时间戳(互相转换)(自定义格式)- 案例篇
- vue+element【后台案例 · 搜集 · 集锦】
- 抖音很火的失恋表白网页模板
- 计算机中丢失xapofx1 5.dll,xapofx1 5 dll丢失怎么办_系统提示xapofx1 5 dll丢失的解决方法...
- 是谁的名字缩写_浅谈女枪 or MF之争 盘点LOL中常见的英雄英文名缩写