美文网首页
时刻掌握工作区状态

时刻掌握工作区状态

作者: Simon_Zhang | 来源:发表于2017-06-02 17:03 被阅读13次

    我们已经成功添加了test.txt文件,现在继续学习,我们继续修改test.txt文件。修改为:

    git is a good work helper.
    I am good at git
    

    现在,运行git status命令看看结果:

    $ 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:   test.txt
    
    no changes added to commit (use "git add" and/or "git commit -a")
    

    git status命令可以让我们时刻掌握仓库当前的状态,上面的命令告诉我们,test.txt被修改过了,但还没有暂存。

    虽然Git告诉我们test.txt被修改了,但如果能看看具体修改了什么内容,自然是很好的。比如你休假两周从国外回来,第一天上班时,已经记不清上次怎么修改的
    test.txt,所以,需要用git diff这个命令看看:

    diff --git a/test.txt b/test.txt
    index afd2bd3..71db088 100644
    --- a/test.txt
    +++ b/test.txt
    @@ -1 +1,2 @@
     git is a good work helper.
    +I am good at git
    \ No newline at end of file
    

    git diff顾名思义就是查看difference,显示的格式正是Unix通用的diff格式,可以从上面的命令输出看到,我们是添加了一行内容。

    知道了对test.txt作了什么修改后,再把它提交到仓库就放心多了,提交修改和提交新文件是一样的两步,第一步是git add:

    $ git add test.txt
    

    同样没有任何输出。在执行第二步git commit之前,我们再运行git status看看当前仓库的状态:

    $ git status
    On branch master
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
    
            modified:   test.txt
    

    git status告诉我们,将要被提交的修改包括readme.txt,下一步,就可以放心地提交了:

    $ git commit -m "add good at line"
    [master c90d9d5] add good at line
     1 file changed, 1 insertion(+)
    

    提交后,我们再用git status命令看看仓库的当前状态:

    $ git status
    On branch master
    nothing to commit, working directory clean
    

    Git告诉我们当前没有需要提交的修改,而且,工作目录是干净(working directory clean)的。

    同样的我们使用SourceTree来实现上面的操作,
    修改test2.txt文件,改为:

    git is a good work helper.
    I am good at git
    

    打开SourceTree,切换到"文件状态",我们可以看到修改的文件test2.txt已经在未暂存列表中了,双击后,我们可以在右侧窗口看到修改文件的内容。GUI的优势就体现出来了,我们可以通过它,可以直观的看到我们当前工作区的状态。

    git_status.png

    在未暂存列表中,选中test2.txt文件,右键,选中添加。结果如下:

    git_status_2.png

    我们已经把文件test2.txt的改动添加到了暂存区,然后我们将暂存区的改动提交到版本库中。

    git_commit_2.png

    然后我们的工作区就干净了!

    git_status_clear.png

    小结一下:
    在项目开发的过程中,我们要随时的跟踪工作区的状态,以便随时随时将工作区的改动提交到版本库。这节我们学习了如下两个命令
    1、git status 查看工作区状态
    2 、git diff 查看改动内容

    相关文章

      网友评论

          本文标题:时刻掌握工作区状态

          本文链接:https://www.haomeiwen.com/subject/bkpufxtx.html