首页 > 其他 > 详细

git文件状态转换

时间:2017-01-09 18:28:24      阅读:228      评论:0      收藏:0      [点我收藏+]

        在git管理下的项目当中的文件均有3中状态,分别是已修改、已暂存、已提交。

如下图所示,存于工作区当中的文件修改之后执行add命令,则将修改存于暂存区,

接着执行commit命令,则修改被存于本地仓库当中。以下是三个区间的状态转换图。

技术分享

        举例说明:

        1)初始化一个项目helloworld;

技术分享

          2) 在项目里面添加一个文件 hello.txt,此时hello.txt文件仅存在与工作区当中

技术分享

        文件内容为

class Main{

    public static void main(String args[]){

       System.out.println("版本一");
    }

}

          3) 执行git add hello.txt命令,将更改存于暂存区当中

技术分享

           4) 执行git commit –m “one” 命令,更改将存于本地仓库当中

技术分享

           5) 更改hello.txt,此时新版本只存在于工作区间

技术分享

           6) 执行git checkout hello.txt;则可以将暂存区当中的版本恢复到工作区间

技术分享

技术分享

          7) checkout命令可以将文件从暂存区恢复,而reset命令可以将文件从本地仓库当中恢复,

其中reset -- soft命令,可以将文件恢复到暂存区,不会对工作区间有更改;

        reset -- hard命令,可以将文件恢复到暂存区和工作区间。

举例说明,git reset –soft HEAD~1 暂存区恢复到上一次提交

                    git reset --hard HEAD~2 彻底回退到上两次提交

git文件状态转换

原文:http://www.cnblogs.com/huangbei1990/p/6265991.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!