Git文件修改和还原

原创
2017/01/04 23:35
阅读数 1.5K

git文件的修改和修改还原

1、首先创建一个新的文件夹并且通过git init将其设置为git的工厂,添加一个a.txt的文件,使用
    git add .将其设置为Staged状态之后,通过git commit -m "first"将其添加到git的版本库中。

2、下一步我们修改一下a.txt文件,执行git add .再次将其提交到Staged状态,此时我们先
    不进行commit,我们向a.txt中写入一些内容,使用git status看看情况:

    我们发现a.txt处于两种状态StagedModified,这是因为我们第一次修改进行了add之后它变成了
    Staged状态,Index对这次操作进行了记录,但此时再次修改了之后,Index发现a.txt的内容和版本
    库中不一致,所以也将它的状态改为了Modified状态,此时进行commit操作。

    我们发现,该文件仅仅只是提交了Staged状态的修改,而Modified状态的文件并没有进行提交,这再次
    证明了,只有Staged状态才能commit到版本库中,如果是Modified状态,需要先通过add将其
    设置为Staged状态(也就是添加到暂存区)。此时如果我发现我这次的修改没有意义,希望a.txt能够
    和版本库中的内容一致,只要使用以下命令即可:

git checkout a.txt

    查询一下a.txt,我们会发现该文件的内容已经和版本库中一样了。

    所以通过checkout可以很方便的让自己的文件同步版本库中的内容,注意使用checkout只能
    同步modified状态下的内容,此时我们再次对a.txt进行修改,并且通过add进行操作之后,a.txt的文件
    状态就从Modified变成了Staged状态,我们再来使用checkout看看效果:

    此时我们发现checkout并不能还原原来的文件内容了。所以我们得到一个结论checkout命令并不能
    还原Staged状态的内容,此时可以通过:

git reset HEAD a.txt

    把该文件从Staged状态设置为Modified状态,也就是将这个文件从暂存区中清除。

    之后通过git checkout a.txt就可以把内容还原了。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部