git二:git的增删改与回退操作

一 

  1.修改文件

    现在我们已经成功添加并提交了一个readme.txt文件,此时我们继续修改文件。

   

    Git is a distributed version control system.
    Git is free software.

     git status 查看状态:       

        modified:   readme.txt  #已经修改过了

  2.查看修改的具体内容 
    假如时间过长忘记了自己过去进行了什么操作,可以用git diff命令,它可以看到我们做了哪些修改。
  3.提交数据
    知道了做了哪些操作之后,这时候可以放心的提交到仓库了。
      git add readme.txt
      git status
      git comment -m "add disturbute"

 4.提交后的状态
    git status 当前没有提交的数据,工作区是干净的。

二版本回退
  现在对readme.txt文件进行修改,然后新建一个licence.txt文件,git status 得到的状态是readme.txt被修改了但license未被add,所以状态为untracked。1.查看历史记录:git log #可以看到的是最近的几次操作
    git log --pretty=oneline #返回版本号
   2.回退操作
    HEAD 表示当前版本,HEAD^表示上一个版本 上上个版本则是HEAD^^
    git reset --hard HEAD^
    cat readme.txt #查看文件,发现果然还原了。
  3.反回退操作
    找到之前那个操作的版本号: git reset --hard 版本号(写前几位就行)
  4git reflog 用来记录每一次命令   

三.工作区与暂存区
  工作区:
    在电脑中看到的目录,learngit文件就是一个工作区。
  版本库:
    工作区的隐藏目录.git,是git的版本库。git为我们自动创建了一个叫master的分支,head是指向它的指针。
    版本库分为暂存区和master分支,add就是添加到暂存区,commit则是把当前暂存区的内容提交到当前分支。
      
  git add 两次 git status查看状态,把两个修改放到了暂存库,commit一次性把两个操作提交到分支。

四.管理修改
  git跟踪管理的是修改,而不是文件
    修改readme文件 add 再次修改readme文件 commit
    git status发现只有第一个修改被提交了,因为第二次没有把修改记录提交到暂存区。git把暂存区的操作提交了。


五.撤销修改
  git checkout --readme.txt 把添加到暂存区的文件,撤回到工作区。
  在还没有添加暂存区的文件撤回操作。

六.删除文件
  1.现在删除一个test.txt文件,rm test.txt。但是如果我们已经把这条修改提交到master,git 上有记录。可以回退操作。
  2.在版本库中删除该文件 git rm test.txt git commit - m ""remove test.txt"
   
  














 
原文地址:https://www.cnblogs.com/pbwzc/p/11093717.html