zoukankan      html  css  js  c++  java
  • 2016/01/13开始学习git:管理修改、撤销修改

    一、管理修改

    1. 第一次修改readme.txt       :  增加一行Git tracks changes.
    2. 添加readme.txt                :       git add readme.txt
    3. 第二次修改readme.txt        :  修改Git tracks changes.Git tracks changes of files.
    4. 提交readme.txt                :     git commit -m "git tracks changes"
    $ git diff HEAD -- readme.txt 命令可以查看工作区和版本库里面最新版本的区别
    -Git tracks changes.
    +Git tracks changes of files.

    发现:只提交了第一次,没有提交第二次的修改=========》Git管理的是修改,当你用git add命令后,在工作区的第一次修改被放入暂存区,准备提交,但是,在工作区的第二次修改并没有放入暂存区,所以,git commit只负责把暂存区的修改提交了,也就是第一次的修改被提交了,第二次的修改不会被提交。

    每次修改后都需要add

    二、撤销修改

    readme.txt增加一句:My stupid boss still prefers SVN.

    git status可以查看到库状态的变化

    1.如果没有add

    方法1、直接在工作区删除

    方法2、git checkout -- readme.txt

    2.已经add

    用命令git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区:

    $ git reset HEAD readme.txt                  撤销暂存区
    Unstaged changes after reset:
    M       readme.txt

    asus@asus-PC MINGW64 /e/learngit (master)
    $ git status                                         查看库状态
    On branch master
    Changes not staged for commit:
      (use "git add <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)

            modified:   readme.txt

    no changes added to commit (use "git add" and/or "git commit -a")

    asus@asus-PC MINGW64 /e/learngit (master)
    $ git checkout -- readme.txt                文件取消修改

    asus@asus-PC MINGW64 /e/learngit (master)
    $ git status                                        暂存区clean、文件modified已取消
    On branch master
    nothing to commit, working directory clean

    asus@asus-PC MINGW64 /e/learngit (master)
    $

    小结

    场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

    场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

    场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

  • 相关阅读:
    简单验证用户输入身份证号和手机号
    伸展树(Splay Tree)
    AVL树
    Size Balanced Tree(节点大小平衡树)
    Treap
    可持久化线段树(主席树)
    划分树
    归并树
    zkw线段树
    莫比乌斯反演
  • 原文地址:https://www.cnblogs.com/lao-wan/p/5126056.html
Copyright © 2011-2022 走看看