Git的下载和安装

下载链接:官网下载、百度云下载
安装说明:双击exe文件,默认配置完成安装,开始菜单里出现如下图的三个图标。

Git基本配置

安装完成后,我们需要进行两项配置,一项是配置自己的名字,一项配置自己的邮箱地址,配置的目的是为了可以方便查看是谁修改的代码,以做确定身份之用。在桌面任意处右击 → Git Bash Here,在弹出的Git Bash命令框中输入下面的命令:

$ git config --global user.name “Your name” //配置用户名
$ git config --global user.email “Your Email address”  //配置用户邮箱地址

例如:

$ git config --global user.name “Micheal”
$ git config --global user.email “15732625435@163.com”

查看当前配置命令:

$ git config user.name   //查看用户名
$ git config user.email  //查看用户邮箱地址
$ git config -l          //查看所有配置

整体图示:

ok,配置算是完成了。

Git简单使用

通常,项目的所有代码放在一个文件夹中。不过,为了展示方便,我就用一个txt文件来代替这个系统代码文件夹,通过对txt文件的管理来映射对代码的管理,效果一致。

  • 在桌面新建一个文件夹,命名为GitTest。

  • 在GitTest文件夹下新建一个文本文件,命名为readme.txt。(这相当于把代码文件夹放到GitTest根目录下)

  • 在GitTest文件夹下右击,选择Git Bash Here,输入命令:git init 。这时候,GitTest文件夹下会出现一个.git文件夹,它是隐藏的,需要把文件夹选项设置为显示隐藏文件夹方可看到。这个时候,GitTest文件夹下就是一个版本库了。就相当于我们new了一个管理员,不过这个管理员现在还不知道要管理什么内容,我们需要告诉他。

  • 在GitTest文件夹下右击,选择Git Bash Here,输入命令:git add . (这个点代表所有文件,你也可以写成具体的文件名,如readme.txt)。这行命令的意思是告诉仓库管理员,你把这个文件夹下的所有文件都添加到仓库了,让他帮你把这些文件管理起来。

  • 然后在命令行中输入命令:git commit -m "add files" ,这行命令的意思是告诉管理员一些备注信息。引号里面必须写一些内容,写什么随你。

  • OK,执行完上面这些步骤,我们的readme.txt文件就被管理起来了,现在我们开始演示。比如,我在readme.txt文件中添加一行信息:I love git, 保存。查看被修改的文件,使用命令:git status 。查看修改的内容,使用命令:git diff 文件名。如图所示,修改了文件readme.txt,在其中添加了一行信息 I love git

  • 现在我们再执行一次git add .git commit -m "add one sentence"。如下图所示,这是什么意思呢?我们小时候玩游戏的时候,都有状态存盘的功能,如果某一关没有过去,你还可以选择读取前一关的状态,从那里重新开始。Git也是一样,每当你觉得文件修改到一定程度的时候,就可以保存一个“快照”,这个快照在Git 中被称为commit。一旦你把文件改乱了,或者误删了文件,还可以从最近的一个commit恢复,然后继续工作。现在,我们就把readme.txt这个文件保存了一个快照。

  • 为了你更好的理解呢?我们再重复一遍上面的操作。我再在readme.txt文件夹下添加一行信息:Git is the best VCS. 然后执行git add .git commit -m "add the other sentence"。这样,我们就又一次存了一个快照。

  • 好了,就像打游戏一样,提前存了快照,即使打输了游戏,也还是可以返回到保存的进度。类比代码,我们改乱了代码,希望回到之前的状态。我们就可以执行命令:git log 来查看我们存了哪些快照。

  • 我们现在就可以看到了我们存了三次快照,第一次是将代码添加到版本库进行管理,算是初始进度。第二次是添加一行句子:I love git.的快照。第三次是添加一行句子:Git is the best VCS. 的快照。commit后面跟着的一串字母和数字的组合是系统生成的不会重复的SHA1计算出来的数字,是这次快照的惟一ID属性。当我们需要回到指定的快照的时候,就需要输入其ID来进行返回。

  • 下面我们回到只有第一个句子的快照,输入命令:git reset --hard 805c6c ,这句命令中的805c6c其实就是指的第二次快照的ID,不过这ID没必要写全,写前几位就可以了,Git会自动去找。OK,执行完这行命令,你再看看readme.txt文件中是不是只有一行信息了。

小结

现在总结一下:

  • 新建一个版本管理仓库:git init
  • 向仓库中添加一个文件:git add filename
  • 保存快照:git commit -m "top information"
  • 查看快照:git log
  • 返回到指定快照:git reset --hard commit id

注意:commit 之前一定要先add ,因为它保存的快照是add的东西。这就涉及到Git优于SVN的一点,Git保存的是修改,而SVN保存的是文件,所以Git在速度上优于SVN。如果你不理解,我举个例子:对于一个txt文件,如果我们在里面添加了一行信息,Git只保存添加的这一行信息。而SVN则保存的是加上这两行信息后的所有项目文件。这个只保存修改的机制是Git的一大亮点。


参考资料: 廖雪峰

【Git】从安装配置到简单使用相关推荐

  1. Git 基础 —— 安装 配置 别名 对象

    Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 Git 安装 Git下载地址 ...

  2. asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程...

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

  3. git本地安装配置与基础概念

    史上最详细安装教程 以上教程是作为扩展学习,其实完全按默认安装就可以了:我们详解配置过程 配置git环境:git config --global config:参数是用来配置git环境的 global ...

  4. Gitlab安装配置及简单问题处理

    Git 是版本控制系统 Github 是在线的基于Git的代码托管服务 Gitlab 可以在上面创建免费的私人repo 建议(少走弯路) 1.Gitlab本身很容易安装,整个安装包也就300M,下载到 ...

  5. Redis的安装配置及简单集群部署

    最近针对中铁一局项目,跟事业部讨论之后需要我们的KF平台能够接入一些开源的数据库,于是这两天研究了一下Redis的原理. 1. Redis的数据存储原理及简述 1.1Redis简述 Redis是一个基 ...

  6. 安装git安装路径在哪_Atom插件安装与git的安装配置

    一.Atom 插件在线安装 1. 安装插件 language-asciidoc ==>语法高亮asciidoc-preview ==>实时预览 在dos 下通过cmd命令安装插件 打开do ...

  7. ETCD集群安装配置及简单应用

    一.环境准备 CentOS Linux release 7.3.1611 (Core) etcd-v3.2.6 二.ETCD下载 https://github.com/coreos/etcd/rele ...

  8. MacBook git 下载 安装 配置环境变量 使用示范

    文章目录 下载 安装 配置环境变量 使用示范 下载 搜索 git mac download 一般第一个就是: https://git-scm.com/download/mac 这里提到了6种安装方式. ...

  9. Git的安装配置超详细版本(全)

    直奔主题 git的安装 通过官网进行安装以及配置 分别对应好电脑的位数配置 下载完成之后双击进行安装即可 安装的目录最好不要有中文的路径 默认即可 勾选的选项主要有 右键菜单 大文件的支持 配置默认的 ...

  10. 图像识别---Windows下anaconda和yolov5安装配置及简单使用

    anaconda安装 anaconda安装一种是直接从官网下载,但是因为源是国外的,下载速率十分缓慢.并且还很容易断开,本文就不介绍了.另一种则是从国内清华源下载,连接比较稳定.推荐!!! 下载地址h ...

最新文章

  1. 8-14-Exercise
  2. python语言入门w-python基础知识(一)
  3. Hibernate 笔记 缓存
  4. CodeForces - 1265D Beautiful Sequence(贪心+构造+思维)
  5. gif提取 python_编写Python爬虫抓取暴走漫画上gif图片的实例分享
  6. DNS 反向解析出错 Error in named configuration: zone centos.vbird/IN: loaded serial 2011080401
  7. Kubernetes 小白学习笔记(9)--搭建一个kubernetes集群--安装Ubuntu虚拟机和容器docker
  8. hashmap自定义排序java,如何在Java中对HashMap进行排序
  9. 有没有好人看看,谢谢谢谢
  10. 电子设计竞赛(6)-逆变电路
  11. cesium获取模型高度_Cesium专栏-空间分析之剖面分析(附源码下载)
  12. 大数据框架基础Hive安装
  13. 怎样将计算机32位换为62位,电脑32位怎么换62位
  14. Android 9.0 IMS通话流程
  15. 2023年黑马Java入门到精通教程--Java基础入门
  16. 考研复试--数据链路层--计算机网络面试题
  17. 嵌入式学习——串口通信小试
  18. 二叉树的前、中、后遍历非递归实现
  19. Javascript运算符知多少
  20. 北京周末游周边 —— 东小口森林公园

热门文章

  1. 基于无线Mesh网络OLSR路由协议的MATLAB仿真
  2. Android系统判断CPU是32位还是64位
  3. Dom 中 children 与childNodes 的区别
  4. div无法触发blur事件解决办法
  5. python 获取图像亮度和锐度_python增加图像对比度的方法
  6. C10K问题与IO多路复用
  7. 创业需要宽广的心胸吗--leo看赢在中国第三季(6)
  8. 能被3,4,5等数整除的数的特征
  9. 网页设计期末作业ppt+源码(免费获取)
  10. 第3章-21 判断回文字符串 (15分) PTA-python 题解 浙大版《Python 程序设计》题目集