GitHub学习(四)

作者: 夜航星osmo | 来源:发表于2017-09-12 14:24 被阅读21次

之前我们讲了文件的修改,本次我们将对文件的删除和误删恢复操作进行介绍。

我在本地工作区中新增了几个文件,我们通过ls -la命令来查看一下。

本地工作区新增文件

此时,如果我想删除file.txt文件,直接用rm <文件名>进行删除

将file.txt文件删除,并查看本地工作区状态

此时,工作区的file.txt已经被删除。由于没有添加到暂存区,也没有提交到版本库,此次删除无法恢复。

当我们将文件提交到暂存区后,通过rm删除没用的文件,会提示你最近添加和删除的操作

git add . 提交到暂存区
提示信息

如果你误删了file.txt,可以用git checkout -- <文件名>将暂存区中的file.txt恢复到本地工作区,此时本地暂存区将恢复到git add. 时的状态。

恢复到git add .时

但如果已经将删除后的文件提交到本地仓库,误删的文件将无法通过git checkout恢复。

删除后提交到版本库
无法恢复

我们需通过上一篇的git reset版本回退来恢复误删的文件。但此时恢复的文件将是版本库中的最新版本,之后所做的修改将无法恢复

如果你将误删后的版本推送到了远程仓库,此时远程仓库中的文件也已被移出,想要恢复则需要如下操作:

查看版本信息,并回退到想要的版本

查看并回退版本

我们照之前的操作将file.txt添加到暂存区,然后提交到本地仓库并推送至远程仓库

将file.txt添加到暂存区,然后提交到本地仓库并推送至远程仓库

这时,提示我们需要先从远程仓库拉取项目。

拉取远程项目

但在拉取远程仓库时却出现了问题。然后我又重新回到之前的版本,这次我对file.txt文件直接进行编辑。

重新回退版本,并对file.txt直接进行编辑

重新提交到本地仓库,并在推送到远程仓库前拉取远程项目,提示当前版本与其他版本有冲突,需要手动合并。

提示需要手动合并冲突

又重新对file.txt进行添加、提交等操作

重新添加、提交,并推送至远程

此时修改后的file.txt被成功提交到远程仓库。

远程仓库中的项目文件

注:由于远程仓库中已是删除file.txt后的版本,所以在版本回退后,如果直接进行添加等操作,删除的文件还是会在拉取时被移除。

相关文章

  • GitHub学习(四)

    之前我们讲了文件的修改,本次我们将对文件的删除和误删恢复操作进行介绍。 我在本地工作区中新增了几个文件,我们通过l...

  • GO——学习笔记(三)

    上篇:GO——学习笔记(二) 下篇:GO——学习笔记(四) 参考: https://github.com/asta...

  • Netty源码分析5 - Netty 最简用法

    Netty 是一个事件驱动的异步网络框架。重要的四个学习资料:github:https://github.com/...

  • GO——学习笔记(五)

    上篇:GO——学习笔记(四) 下篇:GO——学习笔记(六) 示例代码——go_4 https://github.c...

  • 开发工具

    从0开始学习 GITHUB 系列之「初识 GITHUB」 从0开始学习 GITHUB 系列之「加入 GITHUB」...

  • GitHub学习

    Git初始化及仓库创建 基本信息设置 设置用户名 设置用户名邮箱 新建本地仓库 先创建仓库文件夹 进入文件夹右击g...

  • github 学习

    以前学过一次,现在忘了,这里做个笔记,就当备忘录了 完整的github原理, git命令介绍见: https://...

  • github学习

    github安装了GitHub桌面版。也测试了xxxx.github.io。GitHub的网页博客。代码可以直接上...

  • GitHub学习

    今天是我第一次写文章,之前一直想写来着但是没什么时间,所以趁着今天有时间了写一下,我个人觉得写文章不为别的...

  • github学习

    合作者模式 邀请合作者 pycharm中使用github 与github连接 创建仓库 克隆仓库

网友评论

    本文标题:GitHub学习(四)

    本文链接:https://www.haomeiwen.com/subject/cdtcsxtx.html