知识速查

创建版本库

初始化项目 git init

从零开始创建项目

示例

git init

克隆项目 git clone

将已有项目拷贝到本地

示例

git clone git@github.com:snowdreams1006/snowdreams1006.github.io.git

添加文件 git add

将新文件或已修改文件添加到缓存区

示例

git add README.md

查看状态 git status

查看当前文件是否和上次提交内容是否有修改

示例

git status README.md

比较差异 git diff

查看当前文件和上次提交内容的具体差异

  • 尚未缓存的修改: git diff
  • 查看已缓存修改: git diff --cached
  • 查看已缓存与未缓存的所有修改: git diff HEAD
  • 显示摘要而非整个差异: git diff --stat

示例

git diff README.md

提交文件 git commit

将缓存区内容添加到版本库

示例

git commit -m "remark"

取消已缓存内容 git reset HEAD

将缓存区内容添加到版本库

示例

git reset HEAD

删除文件 git rm

  • 从暂存区中移除且不保留在工作目录: git rm <file>
  • 强制从暂存区中移除且不保留在工作目录: git rm -f <file>
  • 从暂存区中移除但保留工作目录: git rm --cached <file>

示例

git rm README.md

移动文件 git mv <file_old> <file_new>

移动或重命名文件,目录,软连接

示例

git mv README.md README_NEW.md

commit push pull fetch merge 的区别与含义:

  • git commit : 将本地修改过的文件提交到本地仓库中
  • git push : 将本地仓库的最新版本推送到远程库中
  • git pull : 从远程库获取最新版本到本地,并自动merge
  • git fetch : 从远程库获取最新版本到本地,不会自动merge
  • git merge : 将指定版本合并到当前分支

替换本地改动

丢弃当前文件修改内容,已添加到暂存区以及新文件都不会受到影响

示例

git checkout -- <file>

丢弃本地所有改动

示例

git reset --hard

分支管理

创建分支 git branch

创建本地分支,但不自动切换新分支

示例

git branch dev

切换分支 git checkout

切换到指定分支

示例

git checkout dev

创建并切换分支 git checkout -b

创建本地分支并自动切换到新分支

示例

git checkout -b feature

合并分支 git merge

将指定分支合并到当前分支

示例

git merge dev

删除分支 git branch -d

删除指定分支

示例

git branch -d dev

列出分支 git branch

列出本地全部分支

示例

git branch

提交日志 git log

查看纳入版本库的提交日志

示例

git log

标签管理

创建标签 git tag -a

创建标签并提交备注

示例

git tag -a v1.0.0

追加标签 git tag -a

追加标签并更新备注

示例

git tag -a v0.9.0 6ad8956bc09a6a62c731711eabe796690aa6471c

删除标签 git tag -d

删除指定标签

示例

git tag -d v1.0.0

查看标签 git show

查看指定标签

示例

git show v1.0.0

列出标签 git tag

列出本地全部标签

示例

git tag

git 入门教程之知识速查的更多相关文章

  1. git 入门教程

    git 入门教程之协同开发 前面我们已经介绍过远程仓库的相关概念,不过那时并没有深入探讨,只是讲解了如何创建远程仓库以及推送最新工作成果到远程仓库,实际上远程仓库对于团队协同开发很重要,不仅仅是团队协 ...

  2. 廖雪峰Git入门教程

    廖雪峰Git入门教程  2018-05-24 23:05:11     0     0     0 https://www.liaoxuefeng.com/wiki/00137395163059296 ...

  3. java springboot整合zookeeper入门教程(增删改查)

    java springboot整合zookeeper增删改查入门教程 zookeeper的安装与集群搭建参考:https://www.cnblogs.com/zwcry/p/10272506.html ...

  4. 史上最简单Git入门教程

    一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 工作原理 / 流程: Workspace:工作区Index / Stage:暂存区Repository:仓库区(或本地仓库)Remo ...

  5. Git入门教程

    参考文献: 1. Pro Git 2. Git教程 3. Git教程 4. 图解Git

  6. git 入门教程之紧急修复

    和往常一样,每个人团队开发者都在自己的本地分支上进行日常工作,相互独立又相互联系,一直以来相安无事,可是某天下午,上级领导突然急冲冲的打电话告诉你线上出bug了,需要你紧急修复,下班之前必须解决! 我 ...

  7. git 入门教程之远程仓库

    远程仓库 如果说本地仓库已经足够个人进行版本控制了,那么远程仓库则使多人合作开发成为可能. 如果你只是打算自己使用git,你的工作内容不需要发布给其他人看,那就用不到远程仓库的概念. git 是分布式 ...

  8. git 入门教程之撤销更改

    撤销更改 相信你已经了解了 git 的基本概念,也清楚了工作区,暂存区和版本库的关系,现在让我们用所学的知识继解决实际问题吧! 背景 正常看得见的目录是我们最为熟悉的工作区,在工作中不可能总是100% ...

  9. git 入门教程之版本控制

    版本控制 我们知道 git 是分布式版本控制系统,所以称被控制对象是版本本身没错,但是从git 命令中发现,并没有版本这个名词,有的只是commit,所以前几节我一直称其为提交. 为了避免后续教程引发 ...

随机推荐

  1. Redis(2)---数据持久化

    数据持久化 Redis有两种持久化的方式:快照(RDB文件)和追加式文件(AOF文件) (1)RDB持久化方式是在一个特定的间隔保存某个时间点的一个数据快照.(默认模式) (2)以日志的形式来记录每个 ...

  2. html标签详解(1)

     http标签详解及讲解        1.基础标签 <!DOCTYPE html> <!--表示文本类型--> <html> <!--<html> ...

  3. InnoDB多版本

    InnoDB是一个多版本的存储引擎:为了支持事务的一些特性诸如并发和回滚,它保持着被修改行的旧版本信息.这些信息被存储在一个被叫做“回滚段”的表空间中(跟Oracle中的回滚段类似).InnoDB在回 ...

  4. .NET Core + Abp踩坑和填坑记录(1)

    1. Net Core 的DI和Abp的DI并存 Startup中 ConfigureServices返回值改为IServiceProvider 在ConfigureServices最后调用retur ...

  5. MongoDB高可用集群+MMS集群监控搭建

    备注: mongodb学习资料 http://www.runoob.com/mongodb/mongodb-tutorial.html 一. 集群的三个组件: mongos(query routers ...

  6. linux 命令 — download

    wget 下载工具 一般 wget url 下载url指定的资源,日志输出到stdout,文件名称和url中指定的资源名称一致 wget url -o log -O file -o:指定日志输出到的文 ...

  7. python3 对拉勾数据进行可视化分析

    上回说到我们如何如何把拉勾的数据抓取下来的,既然获取了数据,就别放着不动,把它拿出来分析一下,看看这些数据里面都包含了什么信息.(本次博客源码地址:https://github.com/MaxLyu/ ...

  8. RabbitMQ系列(四)RabbitMQ事务和Confirm发送方消息确认——深入解读

    RabbitMQ事务和Confirm发送方消息确认--深入解读 RabbitMQ系列文章 RabbitMQ在Ubuntu上的环境搭建 深入了解RabbitMQ工作原理及简单使用 RabbitMQ交换器 ...

  9. perl选项、特殊变量、一些函数参考手册

    perl一行式程序系列文章:Perl一行式 本文用来收集Perl一行式中涉及到的一些选项.特殊变量的说明,可以用来做速查手册. 本文会逐渐更新. 第一次学Perl一行式时,请直接忽略本文内容,并直接从 ...

  10. Jenkins持续集成介绍及插件安装版本更新演示(一)--技术流ken

    Jenkins介绍 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins功能包括: ...