最近想着需要把工作中做一个备份,除了本地保存之外,上传到码云是个不错的选择,除了Git的一些特点外,也可以让别人看到你的代码,共同修改之类的

首先在上传到码云之前,需要学习Git的一些基础教程,包括国外的GitHub也是,需要首先了解Git(分布式版本控制系统)相关

在这里放两个链接:廖雪峰的Git教程以及stormzhang在知乎专栏学习编程里写的从0开始学习GitHub系列之Git速成

本博客适合Windows下的git相关,Linux和Mac版本可以查看我上面放的廖雪峰的Git教程链接

首先下载Git,按照 廖雪峰的Git教程--安装Git完成安装和配置,创建自己的版本仓库

在这里对Git的常见命令做一些说明:

首先需要了解一个概念,Git将文件夹分成三个区,工作区(就是我们电脑工作的区域),缓存区(将文件add到仓库之前的一个缓存区),仓库(相当于Git帮我们存储文件的地方)

1 初始化Git仓库:

我们在安装完Git之后,打开任意一个文件夹的空白位置,单击右键,会出现git Gui here和git Bash here,选择Git Bash here,输入git init即可对本地的Git仓库初始化:

2 向Git仓库添加文件:

输入 git add + 需要上传的文件名以及文件类型即可

新建一个txt文本,命名为readme.txt

内容为:

i am doing something
i want to learn java

没有返回消息,套用Unix的一句话“没有消息就是好消息”,添加成功

3 文件提交

输入 git commit命令,最好在命令后面添加-m + 添加的主要内容:

值得一提的是,由于Git的机制,如果我们在提交之前不将需要提交的项目add到缓存区,则无法commit到版本库里

4 文件修改:

修改完文件之后按照2-3的顺序进行即可

5 查看文件状态

修改原来的文本文件为:

i am doing something
i want to learn java
i am handsome

输入git status命令,返回如下信息,告诉我们代码被修改过了。还没有被提交:

5  查看修改的文件内容

输入git diff + 需要查看的文件名称和文件类型,从下图可以看出,我先是删除了i want to learn java这句话,复原后又添加了i am handsome

6 查看历史记录

输入git log命令,返回修改的次数以及修改的一些摘要(就是我们-m 后面所写的内容)

7 回退命令

假如我觉得自己不够帅,向回退到之前的版本,则输入git reset --hard + 想要回退的版本号,在Git中,使用HEAD表示当前版本,往前一个版本就是HEAD^,依次类推,当前面版本过多的时候,写成HEAD~数字,这时候readme.txt文件倒退回了上一个版本:

i am doing something
i want to learn java

8 再回退到上一个版本:

回退到上一个版本之后,我们输入git log,发现之前我们修改的版本不见了

假如这时候我又觉得自己比较帅了,想恢复怎么办

在第六个命令时,有一个很长的那个commit id,可以根据这个id来再次回退到上一个版本:

输入指令git reset -- hard  + commit id即可

输入cat readme.txt查看,果然,我又帅回来了

如果第二天关机之后忘记了commit,可以输入git reflog命令即可

9 删除/还原文件

当我们想删除文件时,用rm + 想删除的文件名,比如我想删除readme.txt文件

这时候我们查看状态,输入git status命令,可以看到我们删除了readme.txt文件

这个时候有两个选择,因为我们之前将文件提交到了仓库里面,想要删除文件可以使用git rm命令并且git commit提交,这时候就能从从版本库里面将readme.txt文件删除了

或者我们想还原文件,使用git checkout --  readme.txt命令即可,相当于将git仓库区的东西覆盖了工作区的东西,类似于一键还原

熟悉这9个常见命令,我们对Git有了一个大概的了解,可以做一些基本的操作

常见的Git命令的更多相关文章

  1. 常见的git命令和git->github错误

    相关命令 git remote git remote add origin xxx (xxx为仓库链接) 给这个链接取一个名字,为origin git pull git pull <远程主机名& ...

  2. 工作常见的git命令

     Git创建项目仓库: 1.git init 初始化   2.git remote add origin url 关联远程仓库   3.git pull  拉取远程仓库到本地  相当于(git fet ...

  3. 常见的 Git 命令:

    开始一个工作区(参见:git help tutorial) clone 克隆一个仓库到一个新目录 init 创建一个空的 Git 仓库或重新初始化一个已存在的仓库 在当前变更上工作(参见:git he ...

  4. 一天工作所用到的Git命令

    一天工作所用到的Git命令 像大多数新手一样,我一开始是在网上搜索 Git 命令,然后把答案复制粘贴,并没有真正理解它们究竟做了什么. 后来我曾经想过:"如果有一个最常见的 Git 命令的列 ...

  5. Python 命令行之旅:使用 argparse 实现 git 命令

    作者:HelloGitHub-Prodesire HelloGitHub 的<讲解开源项目>系列,项目地址:https://github.com/HelloGitHub-Team/Arti ...

  6. 使用IDEA模拟git命令使用的常见场景

    目录 使用IDEA模拟git命令使用的常见场景 前期准备 新建一个远程仓库 在一个文件夹内建立两个子文件夹作为两个本地仓库的存放位置 本地仓库与远程仓库建立联系 模拟两个用户协同开发的场景(使用IDE ...

  7. 一些常见的shell命令和git命令

    shell命令: pwd : (Print Working Directory) 查看当前目录 cd (Change Directory) 切换目录,如 cd /etc ./当前目录  ../上级目录 ...

  8. 【转】Github轻松上手4-常用的git命令

    转自:http://blog.sina.com.cn/s/blog_4b55f6860100zzih.html 附上一些git的常见命令: •    git remote add origin git ...

  9. 需要熟记的git命令

    需要熟记的github常用命令 总结一下ubuntu下github常用的命令,设置部分跳过,假设repository的名字叫hello-world: .创建一个新的repository: 先在gith ...

随机推荐

  1. linux考试题改错

    符号链接和硬链接有什么区别? 改:符号链接存储文件路径,可以指向不同分区文件,源文件删除后失效. 改:硬链接指向文件索引节点,仅能指向同一分区文件,源文件删除后可以访问. 请描述文件和目录9位权限位的 ...

  2. Python学习之旅(二十八)

    Python基础知识(27):常用内建模块(Ⅲ) 1.urlblib urllib提供了一系列用于操作URL的功能 url是统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示, ...

  3. Tunnels HDU - 4856

    BFS寻找每个点到其他点的最小距离 再状压DP,DP[i][j] i二进制表示每个点的到达状态,j为当前所在点 #include<iostream> #include<cstring ...

  4. webservice接口测试wsdl

    http和webservice接口测试有什么区别? webservice的基础组成是http+xml 三要素:soap传输协议,uddi,wsdl(webservice描述语言xml格式) 优点:跨平 ...

  5. The way to unwind the stack on Linux EABI

    I. probe the stack frame structure The original idea is to unwind the function call stack according ...

  6. windows 控制台下运行cl命令

    前提:确保已经安装vc6或者vs系列 我们可以再命令行直接编译c++程序, 在windows操作系统中,打开命令行,输入cl,若系统提示:'cl' 不是内部或外部命令,也不是可运行的程序或批处理文件. ...

  7. centos7编译安装Python3所需要的库(模块)依赖

    在centos中编译安装python3环境,第三方的库 实战的编辑环境: 1.VMware虚拟机   2.centos7 依赖包经过百度搜集以及之前安装Python3报错搜集(centos7反反复复安 ...

  8. vue中使用mui滑动条无法正常滑动

    需要引入 `mui.min.js`  引入之后浏览器会报错,mui.min.js中的'caller', 'callee', and 'arguments'是不严格模式的js,而webpack中是严格模 ...

  9. what's the 跳空

    出自 MBA智库百科(https://wiki.mbalib.com/) 什么是跳空 跳空在日语中叫“窗口”,英语是“gap”,又称为即价格跳空,是指汇率在快速波动时产生的曲线的最低价与曲线的最高价之 ...

  10. 1: unit test

    1: se01  进入到TR包里面,创建自己的包.(开发过程中,每个人创建一个包,最后每个包合成一个team的TR包.整个产品将所有的TR包合成,发布. 2:向cds view里面插入假数据 3:使用 ...