一: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种情况,如下:

  1. look.txt自动修改后,还没有放到暂存区,使用 撤销修改就回到和版本库一模一样的状态。
  2. 另外一种是look.txt已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。

删除文件。

  假如我现在版本库testGit目录添加一个文件b.txt,然后提交。如下:

只要没有commit之前,如果我想在版本库中恢复此文件如何操作呢?

  可以使用如下命令 git checkout  -- b.txt,如下所示:

今天先写到这里.........过几天再更新git后面的内容

Git的一些常用命令的更多相关文章

  1. Git安装以及常用命令(图文详解)

    **Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...

  2. Git Bash Here常用命令以及使用步骤

    1.首先,要clone项目代码: git clone 链接地址 2.更新代码: git pull 3.添加修改过的文件.文件夹: git add 修改过的文件,文件夹 4.提交并注释: git com ...

  3. Git 、 Cocoapods常用命令

    Git常用命令 1.添加文件   git  add  xxx 2.提交更新到本地  git commit   -m  'local-repo' 3.提交更新    git  push master  ...

  4. Git学习 --> 个人常用命令add,commit以及push

    Git命令行配置1 安装Github2 安装msysgit3 要配置用户名和油箱  git config --global user.name <用户名> 我的命令就是:git confi ...

  5. Git之 基本常用命令

    Git基本常用命令如下: mkdir:         XX (创建一个空目录 XX指目录名) pwd:          显示当前目录的路径. git init          把当前的目录变成可 ...

  6. Git 入门和常用命令详解

    git 使用使用教程   git 使用简易指南  常用 Git 命令清单 下载   https://git-scm.com/downloads 工作流 本地仓库由三部分组成. 工作区:保存实际的文件( ...

  7. git提交项目常用命令及git分支的用法

    1.第一步首先从git托管平台clone项目,我这里就使用idea为例: 填写git的url与存放本地目录名及项目名     2.如果你对项目进行了一些修改,就可以执行git命令,进行提交. 有两种方 ...

  8. 学习Git过程中常用命令的总结

    复制远程库git clone git@github.com:Hconly/learngit.git在GitHub上,可以任意Fork开源仓库:自己拥有Fork后的仓库的读写权限:可以推送pull re ...

  9. Git版本管理工具常用命令说明

    Git常用命令 $ touch README.md 创建一个README.md文件 $ git init  创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文 ...

随机推荐

  1. Zabbix应用六:Zabbix监控Redis

    利用Zabbix监控Redis Zabbix监控redis就比较简单了,因为zabbix官方提供了监控redis的模版和脚本,而且脚本有nodejs和python两种,下载地址:https://git ...

  2. Spark记录-Scala数组/List/Map/Set

    import Array._ import scala.collection.mutable.Set object DataStructure { def main(args:Array[String ...

  3. git clone错误 fatal: early EOF fatal: index-pack failed

    最后用ssh的方式解决了,不用http https://blog.csdn.net/fastjack/article/details/79757520 用了以下的方法还是不行 今天想 clone 一下 ...

  4. POJ - 1094 Sorting It All Out(拓扑排序)

    https://vjudge.net/problem/POJ-1094 题意 对于N个大写字母,给定它们的一些关系,要求判断出经过多少个关系之后可以确定它们的排序或者排序存在冲突,或者所有的偏序关系用 ...

  5. Java入门系列(六)方法

    方法返回多个值 使用集合类 /** * 方法1:使用集合类 (Map以外的集合类也可以随意使用) * 目标:返回一个数组的最大值和最小值 */ public Map<String, Intege ...

  6. CSS reset--(来自网易)

    /* reset */ html,body,h1,h2,h3,h4,h5,h6,div,dl,dt,dd,ul,ol,li,p,blockquote,pre,hr,figure,table,capti ...

  7. CSS3 - chrome,傲游,360极速浏览器不支持小于12px的字号的解决办法

    google流量器chrome,傲游,360极速浏览器都是基于webkit内核浏览器,默认不支持小于font-size小于12px 的字号,即定义font-size小于12px时会发现字体大小依然是1 ...

  8. snmp 简单的网络管理协议

    snmp snmptranslate . # 查看映射关系 DISMAN-EVENT-MIB::sysUpTimeInstance snmpdf -v -c public localhost # SN ...

  9. mysql 1045 access denied for user 解决方法

    提示:1045 access denied for user 'root'@'localhost' using password yes方法一: # /etc/init.d/mysql stop #  ...

  10. 灵活、可高度自定义的——Progress进度圈、弹窗、加载进度、小菊花

    DDProgressHUD的介绍 提供了四种类型的展示: 显示无限旋转的加载图(比如小菊花,可以自定义),显示文字信息.网络刷新时经常用到. 显示加载进度的动画,也可以显示文字.网络下载时用的比较多, ...