git 学习(散记)之二(文件提交、版本回退、暂存区与工作区、撤销修改)

提示:如果是初学者 可以按照我的命令敲一遍。在第一篇要去注册一个github账号才能绑定本地仓库

一、修改文件处理以及查看操作

   vim readme.txt  //打开后随便修改一下

  git status  //查看状态

如果想看文件改了什么  可以用  git diff readme.txt   来看修改的内容 

  git add readme.txt  

  git commit -m"update small readme.txt"

  ok,修改后又重新提交了。

二、版本回退(步骤:通过git log查看提交历史版本id   回退至此id即可)

   git log //查看历史版本记录

  git reset --hard commit_id  //回退至此commit_id的版本  版本回退后 此版本之前的文件修改就会返回至此版本下,注意提前做备份

  要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。同样使用git reset --hard commit_id 回到未来的版本

三、git暂存区与工作区(与svn的差别 是git有暂存区 而svn无)

工作区就是本地的文件夹,修改增加文件工作的地方

暂存区:是git add XXX 添加文件时候提交到暂存区   通过git commit -m"xxxx" 统一提交到git仓库

四、为什么Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件。

修改文件->git add XXX ->第二次修改-> git add XXX ->git commit -m"xxx"   这样commit真正提交的是第一次修改的文件

若第二次修改后 再次进行git add XX   git commit -m"xxx"  则第二次修改的同时提交(理解暂存区的概念)

五、撤销修改

情况1,修改readem.txt后  发现改错了 怎么办?   

           方法1:通过手动的方式修改代码;

          方法2:git  checkout --readem.txt  撤销工作区修改的代码,就是让这个文件回到最近一次git commitgit add时的状态。。注意--非常重要 若无,则是切换分支命令

情况2:修改readem.txt 并且git add到暂存区了,发现改错了,怎么办?

       方法:git reset HEAD readem.txt   把暂存区的修改撤销掉(unstage),重新放回工作区

小结: 1.修改文件后重新提交  vim readem.txt   git add XX   -->   git commit -m"XX"

            2.版本回退:git log 查看版本id   git reset --hard 版本id  

           3.理解暂存区、工作区的概念  git add后 使文件提交到暂存区 但不算是真正的提交的线上仓库

          4.撤销修改    (1)工作区回退  git checkout --文件名   使之回到最近一次git add或者git commit 时候的代码状态

                               (2)暂存区回退: git reset HEAD readem.txt 把暂存区的修改撤销 重新放回工作区  然后可使用git checkout --readem.txt  使文件回到最近一次提交时候的状态

 

需要记住: git  add

                  git commit -m""

                  git reset --hard commit_id(版本id)

                  git checkout --XXX

                  git reset HEAD XXX 

你可能感兴趣的:(git)