点“计算机视觉life”关注,置顶更快接收消息!

小白:师兄,师兄,上次你教我的操作,我傻乎乎的执行了一遍,可是那个Git究竟是什么那?

师兄:小白莫慌,Git就是一种版本控制,小白,你平时写论文,是不是也按日期保存成许多的版本那。

小白:对呀,对呀。

师兄:那开发项目的时候,每个人开发的部分都不一样,需要记录多个版本,这个就是我们伟大的Git做得。

小白:师兄,师兄,那Git岂不是每个开发人员必备的技能了,我要学!我要学!

师兄:那小白紧跟师兄道路,带你走进Git版本控制。

Step1 : Git安装

师兄: 小白,Git的安装上一节可已经交给你了,这次就要考验你的水平了,不过我提供了安装地址给你哦。

​ MAC下载地址:https://git-scm.com/download/mac

​ Windows下载地址:https://git-scm.com/download/win

​ Linux下载地址:https://git-scm.com/download/linux

Step 2: Git配置

师兄: 小白,刚才说了,版本控制是记录每个人开发部分的信息,那使用Git前得配置好个人的信息,让我们知道是谁在提交信息吧。​

  git config --global user.name  'your_name'
git config --global user.email 'your_email'

其中 git config --global 是对当前用户所有仓库有效

​ git config --local 是对当前仓库有效

​ git config --system 是对本系统的所有用户

小白: 师兄,师兄,那如果我配置好了需要查看自己有没有配置好那

师兄: 教你查看对当前用户所有仓库的配置,其他两种你可以举一反三吗?

  git config --list  --global
Step 3: Git命令

师兄: 小白,你看下面这张图,workspace是工作区,index是暂存区,repository是本地仓库区,我们是在工作区添加修改文件被暂存区管理后提交到本地仓库。

师兄: 小白接下来师兄给你介绍几个命令,你只需要记住即可。

(1)在当前工作区新建一个Git仓库

 git  init

(2)将当前文件添加到暂存区

 git add [file1]  [file2]

师兄:小白,你看这里先试用vim在当前工作区创建了一个README.md文件,然后使用git status查看了当前工作区的状态,README.md文件还没有被Git管理,当使用git add提交后,文件已经被Git管理。

(3)提交暂存区当仓库

git commit -m [message]

(4)信息查看

师兄:小白这里我要教你两个查看信息的命令 git status和 git log,git status 就是不管你做了什么变更都可以通过它来查看。git log是你当前分支提交到仓库的历史版本。

师兄:小白你看这里,通过vim重新修改了README.md,又进行了重新提交到仓库,通过git log就可以显示出两次提交的历史版本,如果你需要查看每次提交的具体内容,还可以通过git show 哈希值查看

师兄:小白小白,这里告诉你一个特别有用的工具gitk,可以通过图形化界面查看历史提交信息。

(5)回撤操作

小白:师兄,师兄,如果我不小心提交错的版本到仓库了怎么办?

师兄:小白,别着急这里教你怎么回撤错误的提交。

从仓库回撤最近的一次提交到暂存区

git reset HEAD~1 --soft

回撤暂存区的内容到工作区

git  reset HEAD

放弃前面的两次回退操作,回到变更之前,可以使用

git  reset  哈希值  --hard

这个哈希值找到前面git log 打印的第二次提交打印的哈希值 回退即可。

师兄:好了,小白,这次就给你说到这里,想要学习更多的Git操作,慢慢跟着师兄混吧。

推荐阅读

师兄带你轻松入门GitHub

实用技能 | GitHub 寻宝指南

如何从零开始系统化学习视觉SLAM?

零基础小白,如何入门计算机视觉?

Git小白到老鸟的进阶之路的更多相关文章

  1. 2017PHP程序员的进阶之路

    2017PHP程序员的进阶之路 又是一年毕业季,可能会有好多毕业生即将进入开发这个圈子,踏上码农这个不归路.根据这些年在开发圈子总结的LNMP程序猿发展轨迹,结合个人经验体会,总结出很多程序员对未来的 ...

  2. 浅谈Android进阶之路

    过去十年是移动互联网蓬勃发展的黄金期,相信每个人也都享受到了移动互联网红利,在此期间,移动互联网经历了曙光期.成长期.成熟期.现在来说已经进入饱和期.依然记得在 2010-2013 年期间,从事移动开 ...

  3. Android研发进阶之路

    前言 移动研发火热不停,越来越多人开始学习android开发.但很多人感觉入门容易成长很难,对未来比较迷茫,不知道自己技能该怎么提升,到达下一阶段需要补充哪些内容.市面上也多是谈论知识图谱,缺少体系和 ...

  4. GO语言的进阶之路-初探GO语言

    GO语言的进阶之路-初探GO语言 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.为什么我们需要一门新语言 Go语言官方自称,之所以开发Go 语言,是因为“近10年来开发程序之难 ...

  5. GO语言的进阶之路-爬虫进阶之路

    GO语言的进阶之路-爬虫进阶之路 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 网络爬虫是一种自动获取网页内容的程序,是搜索引擎的重要组成部分.我们今天要介绍的就是一个简单的网络爬 ...

  6. GO语言的进阶之路-面向过程式编程

    GO语言的进阶之路-面向过程式编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们在用Golang写一个小程序的时候,未免会在多个地方调用同一块代码,这个时候如何优化你的代码呢 ...

  7. GO语言的进阶之路-Golang字符串处理以及文件操作

    GO语言的进阶之路-Golang字符串处理以及文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们都知道Golang是一门强类型的语言,相比Python在处理一些并发问题也 ...

  8. Sass进阶之路,之一(基础篇)

    Sass 学习Sass之前,应该要知道css预处理器这个东西,css预处理器是什么呢? Css预处理器定义了一种新的语言将Css作为目标生成文件,然后开发者就只要使用这种语言进行编码工作了.预处理器通 ...

  9. 【转】2017PHP程序员的进阶之路

    2017PHP程序员的进阶之路 又是一年毕业季,可能会有好多毕业生即将进入开发这个圈子,踏上码农这个不归路.根据这些年在开发圈子总结的LNMP程序猿发展轨迹,结合个人经验体会,总结出很多程序员对未来的 ...

随机推荐

  1. spring 接收_header 作为get请求的httpheader

    今天项目遇到一个问题,我们项目用户验证和权限验证的信息(licence)是在http头中设置的,百度了一下,只有ajax才能设置头信息,form表单是无法设置的,但是我突然想起springMVC关于f ...

  2. mysql 中遇到金额 BigDecimal类型字段

    当数据库字段为BigDecimal型,and后面判断去掉. 否则当为0时候,视为空处理了.即传参为null

  3. TXT文本写入数据库

    load data local infile "D:/abc.txt" into table lee; leedabao.txt内容如下,中间用Tab隔开: 2 yuanpeng ...

  4. Spring Cloud Config的配置中心获取不到最新配置信息的问题

    Spring Cloud Config的配置中心获取不到最新配置信息的问题 http://blog.didispace.com/spring-cloud-tips-config-tmp-clear/

  5. Python标准库:内置函数set([iterable])

    本函数是从迭代对象生成集合.集合能够添加或删除元素. 样例: #set() tset = set([1, 2, 3, 3, 4, 5, 6, 6]) print(tset) tset.add(20) ...

  6. 脱了裤子放屁之std::string

    一个天天跟c#奋斗的苦逼c++程序猿 改自己曾经代码的时候发现有例如以下几行. char szPath[MAX_PATH] = {0}; GetModuleFileNameA(NULL,szPath, ...

  7. 统计 与 数学 induction 归纳 deduction 演绎 吴喜之老师

    “统计的思维方式是归纳(induction),也就是从数据所反映的现实得到比较一般的模型,希望以此解释数据所代表的那部分世界.这和以演绎(deduction)问哦主的数学思维方式相反,演绎是在一些人为 ...

  8. Leetcode:remove_duplicates_from_sorted_list

    一.     题目 给定一个排好序的链表,删除全部反复的节点,使每个节点都仅仅出现一次 比如: Given 1->1->2, return 1->2. Given 1->1-& ...

  9. what??|诞生才一年的BCH竟面临硬分叉的抉择

    BCH才刚过一周岁生日一个星期,BCH社区的主力之一Bitcoin ABC(BCH全网接近三分之二节点运行的软件系统由Bitcoin ABC开发)就搅动了社区的涟漪.8月8号,Bitcoin ABC公 ...

  10. appium(8)-locator strategies

    locator strategies Finding and interacting with elements Appium supports a subset of the WebDriver l ...