Git使用(2)

接着上一篇博客。

这里先讲一下使用git进行版本管理时的三个状态。

  版本库          暂存区          工作区

  版本库:最简单的理解就是使用从远程的版本库中拉到本地,或本地库中没有任何修改的状态

  暂存区:当对任何文件进行修改后使用git add . 命令,那么之前的修改便会加到暂存区中

  工作区:即任何的修改,但没有git add . 的全部内容

1、通常在命令中使用的head可以看作游标,代表当前的分支。

    在使用git branch name 创建一个分支时,通过git branch查看分支:

     

     其中*的位置便是游标对应的分支的位置,则head表示的便是该分支

2、git diff  和git diff head 的区别

   1)git diff             比较的是工作区和暂存区

     2)git diff head     比较的是工作区和版本库

3、git status -s 查看修改

     假设修改两次,第一次修改完后使用git add .然后使用git status -s查看, 第二次修改完后直接使用git status -s查看

     其显示如下:

     

     使用该命令后,出现的信息很有意思,红色绿色的M和修改的文件名称

     由上述的修改可知,第一个M的原因是:暂存区和版本库(Head)不同

                              第二个M的原因是:工作区和版本库(Head)不同

4、在工作中用到的4种撤销

   1)git checkout .   |   git checkout file

          最为常见的撤销,该命令的作用是消除工作区的修改

     2)git reset .        |    git reset file

          如果修改后的文件已经使用add 了,那么使用该命令可以将暂存区中的修改撤退到工作区中

      

     3)git reset --soft commitID

          退回到某个节点,将节点后加的内容添加到暂存区中,该命令中的commitID可使用git reflog查看

     4)git reset --hard commitID  

    退回到某个节点,并且三个状态保持一致

         git reset --hard master@{num}可回复到某个点   使用git reflog show master

   

5、代码的clone、推送  

   将git@osc中的代码下载到本地
   git clone 网站中提供的关联地址

   远程关联git@osc中的远程库的地址,并将其命名为origin
   git remote add origin 网站中提供的关联地址

   将本地库中的代码推送到上述地址的master分支上
   git push origin master

原文地址:https://www.cnblogs.com/welv/p/5240499.html