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 ...
随机推荐
- 前端开发——HTML学习笔记
HTML03
- dll多个版本问题
在配置文件设置不同版本的dll即可 配置文件如下 configuration 节点下面的 runtime 节点新增各个版本配置内容 <runtime> <assemblyBindi ...
- tensorflow学习笔记一------下载安装,配置环境(基于ubuntu16.04 pycharm)
一,安装TensorFlow 安装所有必备工具 sudo apt-get install python-pip python-dev python-virtualenv 安装TensorFlow su ...
- arcpy导入错误 问题 “ImportError: No module named arcpy”
如果阁下也出现如下图的错误,用本文的方法也许可以解决问题 首先,打开你python的安装位置,如下图所示的路径,找到desktop10.3.pth文件,打开查看,将你arcgis的相关路径,共3个绝对 ...
- Hive json字符串解析
在做数据测试时,会遇到数据库表里字段类型为json 的情况,而我们可能只关注该字段中的各别内容的信息,如下 content {"测试内容1":,"测试内容2": ...
- Python全栈开发-Day7-面向对象编程2
本节内容: 1.面向对象高级语法部分 1)静态方法.类方法.属性方法 3)类的特殊方法 4)反射 2.异常处理 3.动态导入模块 静态方法 通过@staticmethod装饰器即可把其装饰的方法变为一 ...
- 第 3 章 镜像 - 016 - Dockerfile 常用指令
Dockerfile 常用指令 1.FROM 指定base镜像2.MAINTAINER 设置镜像的作者,可以为任意字符串3.COPY 从build context 复制到镜像 COPY 支持两种形式: ...
- 全栈性能测试修炼宝典--Jmeter实战(二)
性能测试初体验 1.测试分类 从图中可以看出,性能测试在整个软件测试环节中占了50%的内容,比如负载测试.压力测试.性能测试.大数据量测试.恢复测试.内容泄露测试.竞品测试(比较测试)和可靠性测试. ...
- 动态规划-最大的正方形面积 Maximal Square
2018-09-13 19:19:44 问题描述: 问题求解: 方法一: 使用动态规划来求解,算法时间复杂度O(n^2). dp[i][j] : 以(i, j)为右下角的面积最大的正方形的边长. 初始 ...
- python中简单的递归(断点报错的小福利)
首先要先理解什么是递归? 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. 下面讲了一个很简单的递归函数 def clac(n): print(n) if int( ...