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 ...
随机推荐
- 如何用R来定制个性化PPT
ReporteRs包可以创建word,ppt,html文档.它可以格式化R的输出:如可编辑的矢量图,复杂的表格报告功能,企业模板文档的重用(.docx和.pptx).它是一个很好的自动化报告工具,并且 ...
- 力扣(LeetCode)58. 最后一个单词的长度
给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度. 如果不存在最后一个单词,请返回 0 . 说明:一个单词是指由字母组成,但不包含任何空格的字符串. 示例: 输入: &quo ...
- 让browserify接收命令行参数,在打包时parse yml配置文件
功能需求: 1用browserify把各种js打包成浏览器端的1个bundle.js,含有yml配置文件 约束: 1 yml配置文件不在当前工程里(现在还不知道放哪里,以后也会变),希望在打包时,用命 ...
- feed
a1=tf.placeholder(tf.float32) # 占位符 a2=tf.placeholder(tf.float32)r=tf.multiply(a1,a2) with tf.Ses ...
- maven项目依赖jar包报 java.lang.classnotfoundexception:Type com.xx.xx.xxx not present 的解决
今天在工作的时候遇到了这样一个奇葩的异常: java.lang.classnotfoundexception:Type com.ys.yahu.vo.file.MobileFileVo not pre ...
- Lua和C++交互 学习记录之四:全局table交互
主要内容转载自:子龙山人博客(强烈建议去子龙山人博客完全学习一遍) 部分内容查阅自:<Lua 5.3 参考手册>中文版 译者 云风 制作 Kavcc vs2013+lua-5.3.3 1 ...
- Codeforces 960F - Pathwalks
960F - Pathwalks 思路: ORZ 杜老师 用map写1e5个树状数组,骚操作 记Q为query和update次数,则节点个数约为Q*log(N) 代码: #include<bit ...
- 第 8 章 容器网络 - 051 - 在 overlay 中运行容器
在 overlay 中运行容器 运行一个 busybox 容器并连接到 ov_net1: docker run -itd --name bbox1 --network ov_net1 busybox ...
- 如何模拟一个http请求并把response的内容保存下载下来,导出到excel中(结尾福利)
def doExport(self): # 模拟一个http请求 url = u'%s?dumptype=investigation&dumpid=%s&timezone=8' % ( ...
- jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第五话):总结以及build.xml文件
前面基本上把整个配置过程都完整地串起来了,包括可能遇到的难点,按照那个套路应该可以配置好自动打包发布的功能.简单总结下我的学习过程,以及遇到问题是怎样解决的. 准备一个项目源码 刚开始在github和 ...