一: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. Qt error ------ 'XXX' has not been declared

    1.头文件没加 2.调用函数者的头文件在XXX头文件的下方

  2. WinFrom弹出输入框

    代码上面要引用 using Microsoft.VisualBasic; 还不够,在解决方案的引用那里,也要添加引用 如此,便可打出输入框了: ,); 5个参数分别的意思: 提示信息 标题 如果用户没 ...

  3. jdk1.8.0_45源码解读——Set接口和AbstractSet抽象类的实现

    jdk1.8.0_45源码解读——Set接口和AbstractSet抽象类的实现 一. Set架构 如上图: (01) Set 是继承于Collection的接口.它是一个不允许有重复元素的集合.(0 ...

  4. Java SSM框架之MyBatis3(六)MyBatis之参数传递

    一.单个参数  StudentParamsMapper package cn.cnki.ref.mapper; import cn.cnki.ref.pojo.Student; public inte ...

  5. html5 canvas贝塞尔曲线篇(下)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. [转载]使用 NuGet 管理项目库

    原文:http://msdn.microsoft.com/zh-cn/magazine/hh547106.aspx 无论多么努力,Microsoft 也没办法提供开发人员所需要的每一个库. 虽然 Mi ...

  7. [整]Android开发优化-布局优化

    优化布局层次结构 一个普遍的误解就是,使用基本的布局结构会产生高效的布局性能.然而每一个添加到应用的控件和布局,都需要初始化,布局位置和绘制.比如,使用一个嵌套的LinearLayout会导致过深的布 ...

  8. JS高级前端开发群加群说明

    JS高级前端开发群加群说明 *一.文章背景: *二. 高级群: *三. 加入方式: *四. 说明: 一.文章背景: 去年年初建了几个群,在不经意间火了,一直排在"前端开发"关键字搜 ...

  9. 20155235 2016-2017-2 《Java程序设计》第8周学习总结

    20155235 2016-2017-2 <Java程序设计>第8周学习总结 教材学习内容总结 第十四章 NIO与NIO2 认识NIO NIO概述 Channel架构与操作 Buffer架 ...

  10. 第7月第18天 xcode bundle ffmpeg

    1. https://zhuanlan.zhihu.com/p/24281404 2. 186  ffmpeg -i /Users/temp/Downloads/n-201402201522融资融券专 ...