亚洲欧洲国产欧美一区精品,激情五月亚洲色五月,最新精品国偷自产在线婷婷,欧美婷婷丁香五月天社区

      考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場 | 考試論壇  
        當(dāng)前位置:操作系統(tǒng) > Linux > 文章內(nèi)容
        

      Linux基礎(chǔ)教程:AndroidStudio配置Git及Git文件狀態(tài)說明

       [ 2016年2月13日 ] 【

      4、打開test.txt,向其中加入些內(nèi)容,保存。

      Hello
      world

      其實就多了world這個字符串。再次用git status查看文件狀態(tài)。

      除了之前的“Changes to be committed”狀態(tài),還多了“Changes not staged for commit”狀態(tài),表明文件已經(jīng)被修改,但修改還沒有放入暫存區(qū)域,也就是沒生成快照。如果此時進(jìn)行commit操作,只會提交"Hello",忽略 “world”。

      根據(jù)提示,如果想把最新的修改“Hello world”提交到倉庫,需要再次使用命令git add test.txt;如果想撤銷修改,即只想提交“Hello”,可以使用git checkout -- test.txt,再次git status,則可以看到狀態(tài)又改變了。

      總結(jié):所以,在文件未進(jìn)行commit操作之前,存在三種狀態(tài):Untracked files, Changes not staged for commit, Changes to be committed. 每種狀態(tài)可以隨意轉(zhuǎn)換。

      --------------------------------------------------------------------------------------------------------

      題外話

      --------------------------------------------------------------------------------------------------------

      在git的后續(xù)版本中,添加了git stage作為git add的一個同義詞,這樣在語義上更符合上面的Changes not staged for commit。為什么要增加stage呢?

      1、分批提交,降低commit的粒度。

      2、文件快照,便于回退。

      如果一次提交過多文件,對后續(xù)的回滾或跟進(jìn)無疑非常不利,對問題的定位也不便,體驗過估計清楚的。比如你做了兩個功能A和B,對應(yīng)的文件修改分別是a1.java, a2.java; b1.java, b2.java,提交時就可以這樣:

      git stage a1.java a2.java
      git commit -m "功能A"

      git stage b1.java b2.java
      git commit -m "功能B"

      同時,每次修改后stage,任何時刻,都可以回到上一次staged的狀態(tài):

      git checkout -- test.txt

      如果想從stage中刪除,則使用reset

      git reset test.txt

      這個命令就是git stage test.txt的反操作。

      首頁 1 2 3 尾頁
      將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
      關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
      Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved