Git中的文件上传、修改、撤消修改和删除
1.添加文件、提交文件
1.1在learngit目录下创建一个readme.txt文件,并且输入内容。

1.2添加文件到版本库learngit
1.2.1使用git add 文件告诉Git把文件添加到暂存区

1.2.2用命令git commit -m "文件说明"告诉Git把文件提交到仓库

其中,-m后的“引号内容”为提交时的说明。
2.修改文件,查看记录,提交文件
2.1修改readme.txt的内容

2.2修改完毕后,运行git status命令看看结果

此时,提示文件被修改,但是还没有被提交。
2.3使用git diff 文件命令符,此时可以查看两者的修改内容

2.4在知道readme.txt哪些内容被修改后,我们可以选择是否进行提交该文件
继续使用git add和git commit命令符完成提交

两个命令符的示意图如下(来自廖雪峰):

使用git add将工作区文件存放到暂存区

使用git commit将暂存区文件提交到分支

这里learngit为工作区,.git为版本库,stage为暂存区,head为指向master分支的指针。
3.撤销修改
使用git checkout -- file命令符可以进行撤销修改操作,有两种状态的撤销:
3.1 文件自修改后还没有被放到暂存区(未执行git add命令符),现在,撤销修改就回到和版本库一模一样的状态;
例如现在readme.txt文件中添加一行

使用git checkout --readme.txt命令符

发现readme.txt文件已经撤销新增的一行

3.2文件已经添加到暂存区后又作了修改,现在撤销修改就回到添加到暂存区后的状态。

用命令git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区

再使用上述的方法一即可

此时文件回档到我们所需的版本!
4.删除文件
4.1首先创建一个test.txt文件并且执行git add和git commit命令

4.2移除工作区中的文件,使用rm 文件

4.3删除版本库中的文件
使用git rm 文件命令符,再使用git commit -m "说明"提交操作

5.版本回退
5.1继续修改readme.txt的内容

再使用get add和git commit命令符实现提交
5.2使用git log查看版本修改记录

其中,黄色字符代表版本号。
5.3使用git reset命令进行版本回退

其中,HEAD代表最新版本,^代表回退一个版本,上上版本则为HEAD^^
5.4版本返回未来,当需要撤销回退,返回就近的一个返回点,则使用git reset --hard 版本号

5.5 当我们不知道版本号时,使用git reflog命令符查看版本号

Git中的文件上传、修改、撤消修改和删除的更多相关文章
- PHP中,文件上传实例
PHP中,文件上传一般是通过move_uploaded_file()来实现的. bool move_uploaded_file ( string filename, string destinati ...
- MVC中的文件上传-小结
web开发中,文件的上传是非常基本功能之一. 在asp.net中,通常做法是利用webservice 来接收文件请求,这样做的好处就是全站有了一个统一的文件上传接口,并且根据网站的实际情况,可以将we ...
- struts2中的文件上传,文件下载
文件上传: Servlet中的文件上传回顾 前台页面 1.提交方式post 2.表单类型 multipart/form-data 3.input type=file 表单输入项 后台 apache提交 ...
- 转:在Struts 2中实现文件上传
(本文转自:http://www.blogjava.net/max/archive/2007/03/21/105124.html) 前一阵子有些朋友在电子邮件中问关于Struts 2实现文件上传的问题 ...
- Silverlight 2中实现文件上传和电子邮件发送
Silverlight 2中实现文件上传和电子邮件发送 [收藏此页] [打印] 作者:IT168 TerryLee 2008-05-30 内容导航: 使用Web Service上传文件 [I ...
- IIS 7 中设置文件上传大小的方法
在IIS 6.0中设置文件上传大小的方法,就是配置如下节点: <system.web> <httpRuntime maxRequestLength="1918200&quo ...
- 在WebBrowser中通过模拟键盘鼠标操控网页中的文件上传控件(转)
引言 这两天沉迷了Google SketchUp,刚刚玩够,一时兴起,研究了一下WebBrowser. 我在<WebBrowser控件使用技巧分享>一文中曾谈到过“我现在可以通过WebBr ...
- ASP.NET中的文件上传大小限制的问题
一.文件大小限制的问题 首先我们来说一下如何解决ASP.NET中的文件上传大小限制的问题,我们知道在默认情况下ASP.NET的文件上传大小限制为2M,一般情况下,我们可以采用更改WEB.Config文 ...
- ASP.NET Core 中的文件上传
ASP.NET Core上传文件 ASP.NET Core使用IFormFile来读取上传的文件内容,然后将数据写入到磁盘或其它存储空间. 添加FileUpload模型,用来接收上传的文件内容. pu ...
随机推荐
- 3、iptables扩展及使用
iptables/netfilter netfilter: kernel framework,位于内核中的协议框架 iptables 是规则管理命令行工具 四表:filter, nat, mangl ...
- js code
//在页面增加一个放置图标的区块 if(!document.getElementById('_span_jiucuo')) document.write("<span id='_spa ...
- linux中日历命令显示
cal 显示当前月的日历 cal 年份 显示特定一年的年历 [jasmine.qian@]$ cal January 2019 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 ...
- zzulioj 1206 字符串的修改 (字符串修改)
不难,理解一下直接过,代码如下: #include<stdio.h> #include<string.h> #include<math.h> #include< ...
- CentOS7 上安装 Lua5.3
1.CentOS7默认已经安装了5.1.4 ①查看当前lua版本号:lua -v Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio ②查看lua和 ...
- Python 闭包(Closure)
Python 闭包 (Closure) 这里介绍一下python 的闭包 基本概念 闭包(closure)是函数式编程的重要的语法结构. 函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函 ...
- Java 访问RabbitMQ
一.概述 前面学过ActiveMQ.ActiveMQ主要是实现的JMS规范,而RabbitMQ就是AMQP的一个具体实现. RabbitMQ里面有几个概念:生产者.消费者.消息.交换器.路由键.队列. ...
- 酷开 5.5 版本安装第三方app
https://www.znds.com/jc/article/2952-1.html .开始安装(以安装当贝桌面为例): adb connect 192.168.XXX.XXX(电视IP) adb ...
- 数据结构(C语言版)-第2章 线性表
#define MAXSIZE 100 //最大长度 typedef struct { ElemType *elem; //指向数据元素的基地址 int length; //线性表的当前长度 }SqL ...
- Javascript 第五章总结:A trip to Objectville
前言 在以前的代码中,我们使用 primitive 类型的变量和 procedural manner 来执行脚本.但是,更好的办法是 object-oriented (面向对象)的.作者说:它能让我们 ...