知识速查

创建版本库

初始化项目 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. 记录js new Date日期处理的一个坑

    记录js日期处理的一个坑   当前时区为北美东部时区时, new Date('2019-4-1') new Date('2019-04-01') 结果是相关一个月的. 如下图   new Date(' ...

  2. Eclipse打包出错——提示GC overhead limit exceeded

    版权声明:本文为博主原创文章,未经博主允许不得转载. 在Eclipse开发环境中打包发布apk安装包的时候,有时候会出现下面的错误: 原因 在打包的时候,Eclipse占用的内存会增大,当分配给Ecl ...

  3. mysql中主键和唯一键的区别

    区别项 primary key(主键) unique(唯一键约束) 唯一性 可以 可以 是否可以为空 不可以 可以 允许个数 只能有1个 允许多个 是否允许多列组合 允许 允许

  4. python练习六—简单的论坛

    进行简单的web应用之后,接下来就应该学习python连接数据库,这个练习就是在上个练习的基础上将信息保存到数据库,这个联系也没有什么特别的,有之前java web的经验的话,很好理解,主要还是一个M ...

  5. 项目详解4—haproxy 反向代理负载均衡

    一.企业服务架构图及负载均衡的要求 1.场景说明 在企业生产环境中,每天会有很多的需求变更,比如增加服务器.新业务上线.url路由修改.域名配置等等,对于前端负载均衡设备来说,容易维护,复杂度低,是首 ...

  6. python使用多进程

    python多线程适合IO密集型场景,而在CPU密集型场景,并不能充分利用多核CPU,而协程本质基于线程,同样不能充分发挥多核的优势. 针对计算密集型场景需要使用多进程,python的multipro ...

  7. .NET记录-获取外网IP以及判断该IP是属于网通还是电信

    在工作时,需要获取服务器公网IP(外网IP),并且判断该IP地址是属于网通还是电信.花时间整理一下,自己实现的代码,以及后续遇到的问题. /// <summary> /// 获取外网IP ...

  8. ASP.NET WEB API简介

      ASP.NET WEB API是基于.NET Framework用来构建Restful软件架构的框架,它是基于HTTP协议.Http不只是能够生成我们常见的web页面,它更是能够建立服务和面向资源 ...

  9. ResourceOwnerPassword模式使用数据库.

    有时候, ResourceOwnerPassword模式有用的, 可以用来代替我们原来管理程序的开发方式. 因为管理程序本身拥有用户数据的权限嘛, 并不是第三方应用, 无需要授权 集成很简单. 1. ...

  10. Google Maps API Key申请办法(最新)

    之前的Google Maps Api的API Key很容易申请,只需要按照一个简单的表单提交部署的网站地址即可,自动生成API Key并给出引用的路径. 但是最近在处理另外一个项目的时候发现之前的这种 ...