Git的一些常用命令
一:Git是什么?
Git是目前世界上最先进的分布式版本控制系统。
简单的说就是托管代码的便于多人开发的管理系统。
二.Git的一些命令,我详细的说一下
我是基于github给大家说一下git的一些常用命令
git的安装我就不详细介绍了,按网上安装步骤来就行了。
git安装完成之后,需要填写用户名和邮箱作为一个标识。如下:

注意:git config --global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。
(1) 创建版本库
什么是版本库?版本库又名仓库,英文名repository,你可以简单的理解一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改,删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”。
我创建一个‘testGit’版本库,如下:


mkdir: XX (创建一个空目录 XX指目录名)
pwd: 显示当前目录的路径。
git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件。
好了,上面步骤完成之后。
接下来就是把文本添加到版本库里,我添加了一个look.txt文件,内容为1111 如下:

如果和上面一样,没有任何提示,说明已经添加成功了。这是把文件添加到了暂存区
然后用命令 git commit告诉Git,把文件提交到仓库。

现在我们已经提交了一个look.txt文件了,我们下面可以通过命令git status来查看是否还有文件未提交,如下:

说明没有任何文件未提交,但是我现在继续来改下look.txt内容,比如我在下面添加一行22222内容,继续使用git status来查看下结果,如下:

上面的命令告诉我们 look.txt文件已被修改,但是未被提交的修改。
接下来我想看下look.txt文件到底改了什么内容,如何查看呢?可以使用如下命令:
git diff look.txt 如下:

如上可以看到,look.txt文件内容从一行11111改成 二行 添加了一行22222内容。
接下来将修改的内容提交到仓库通过git add 和 git commit提交


(2)版本回退:
如上,我们已经学会了修改文件,现在我继续对look.txt文件进行修改,再增加一行
内容为3333333.继续执行命令如下:

我们对look.txt进行了三次修改,可以通过git log查看提交日志,如下:

git log命令显示从最近到最远的显示日志,我们可以看到最近三次提交,最近的一次是,增加内容为333333.上一次是添加内容222222,
第一次默认是 111111.如果嫌上面显示的信 息太多的话,我们可以使用命令 git log –pretty=oneline 演示如下:

现在我想使用版本回退操作,我想把当前的版本回退到上一个版本,要使用什么命令呢?可以使用如下2种命令,
第一种是:git reset --hard HEAD^ 那么如果要回退到上上个版 本只需把HEAD^ 改成 HEAD^^ 以此类推。
那如果要回退到前100个版本的话,使用上面的方法肯定不方便,我们可以使用下面的简便命令操作:git reset --hard HEAD~100 即可。如下:

再来查看下 look.txt内容如下:通过命令cat look.txt查看

可以看到,内容已经回退到上一个版本了。我们可以继续使用git log 来查看下历史记录信息,如下:

已经没有了3333内容。
但是现在我想回退到最新的版本,如:有333333的内容要如何恢复呢?我们可以通过版本号回退,使用命令方法如下:

以上步骤就可以恢复会退的内容。
(3):Git撤销修改和删除文件操作。
撤销修改:
比如我现在在look.txt文件里面增加一行 内容为444444,我们先通过命令查看如下:

命令 git checkout --look.txt 意思就是,把look.txt文件在工作区做的修改全部撤销,这里有2种情况,如下:
- look.txt自动修改后,还没有放到暂存区,使用 撤销修改就回到和版本库一模一样的状态。
- 另外一种是look.txt已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。
删除文件。
假如我现在版本库testGit目录添加一个文件b.txt,然后提交。如下:

只要没有commit之前,如果我想在版本库中恢复此文件如何操作呢?
可以使用如下命令 git checkout -- b.txt,如下所示:

今天先写到这里.........过几天再更新git后面的内容
Git的一些常用命令的更多相关文章
- Git安装以及常用命令(图文详解)
**Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...
- Git Bash Here常用命令以及使用步骤
1.首先,要clone项目代码: git clone 链接地址 2.更新代码: git pull 3.添加修改过的文件.文件夹: git add 修改过的文件,文件夹 4.提交并注释: git com ...
- Git 、 Cocoapods常用命令
Git常用命令 1.添加文件 git add xxx 2.提交更新到本地 git commit -m 'local-repo' 3.提交更新 git push master ...
- Git学习 --> 个人常用命令add,commit以及push
Git命令行配置1 安装Github2 安装msysgit3 要配置用户名和油箱 git config --global user.name <用户名> 我的命令就是:git confi ...
- Git之 基本常用命令
Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可 ...
- Git 入门和常用命令详解
git 使用使用教程 git 使用简易指南 常用 Git 命令清单 下载 https://git-scm.com/downloads 工作流 本地仓库由三部分组成. 工作区:保存实际的文件( ...
- git提交项目常用命令及git分支的用法
1.第一步首先从git托管平台clone项目,我这里就使用idea为例: 填写git的url与存放本地目录名及项目名 2.如果你对项目进行了一些修改,就可以执行git命令,进行提交. 有两种方 ...
- 学习Git过程中常用命令的总结
复制远程库git clone git@github.com:Hconly/learngit.git在GitHub上,可以任意Fork开源仓库:自己拥有Fork后的仓库的读写权限:可以推送pull re ...
- Git版本管理工具常用命令说明
Git常用命令 $ touch README.md 创建一个README.md文件 $ git init 创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文 ...
随机推荐
- Python【unittest】模块
[unittest]模块是python3.5中的一个内置模块 1.python文件导入[unittest]模块 import unittest 2.定义一个测试用例类,继承[unittest.Test ...
- Python 堆与堆排序
堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法.学习堆排序前,先讲解下什么是数据结构中的二叉堆. 二叉堆的定义 二叉堆是完全二叉树或者是近似完全二叉树. 二叉堆满足 ...
- P3959 宝藏
P3959 宝藏 题目描述 参与考古挖掘的小明得到了一份藏宝图,藏宝图上标出了 nn 个深埋在地下的宝藏屋, 也给出了这 nn 个宝藏屋之间可供开发的 mm 条道路和它们的长度. 小明决心亲自前往挖掘 ...
- Java基础-SSM之Spring的POJO(Plain Old Java Object)实现AOP
Java基础-SSM之Spring的POJO(Plain Old Java Object)实现AOP 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 上次我分享过Spring传统的A ...
- mysql 不同引擎的比较
mysql 支持的默认引擎是InnoDB,其他的常用引擎包括MyISAM等,那么他们有什么差别呢. 首先执行 show engines; 来查看数据库当前支持的引擎. 可以看到mysql支持这么多不同 ...
- telegraf、influxDB、Grafana的安装与基本使用
目的理解influxDB的数据收集原理和方法为使用grafana分析数据及展示结作好准备介绍[收集数据] Telegraf 是一个用 Go 编写的代理程序,可收集系统和服务的统计数据,并写入到 Inf ...
- mysql出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' 错误
init 神奇..其他的都没有成功,这个居然成功了!! 还试验过:sudo mysqld restart啥的,都没有用......
- JMS学习(四)-一个简单的聊天应用程序分析
一,介绍 本文介绍一个简单的聊天应用程序:生产者将消息发送到Topic上,然后由ActiveMQ将该消息Push给订阅了该Topic的消费者.示例程序来自于<JAVA 消息服务--第二版 Mar ...
- python解析minicap
上篇知道了minicap发送图片的格式,照着官网的app.js代码,改用一个python版的来解析它,适当扩展,可以做个小工具实时显示手机屏幕. 步骤: 一.手机开启minicap服务 adb she ...
- 编写灵活、稳定、高质量的 HTML 代码的规范
不管有多少人共同参与同一项目,一定要确保每一行代码都像是同一个人编写的. 语法 用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法. 嵌套元素应当缩进一次(即两个空格 ...