【Git第六節】文件狀態
歡迎大家來到Python自學教程教室,上節課我們了解了Git的工作流,這節課我們將帶大家學習文件狀態的相關內容,你準備好了嗎?
在第4課的最后,我們用以下兩條命令:
git add readme.txt git commit -m 'my first commit'
向我們新建的git倉庫中添加了對readme.txt文件的版本控制。現在,我們要試圖對倉庫中的文件進行一些改動,同時觀察它們的狀態變化,以此實踐上節課中說的git工作流。
首先,在命令行的本地倉庫工作目錄下執行命令:
git status
你會看到:
# On branch master othing to commit (working directory clean)
很好,你的目錄是干凈的,沒什么可提交的。說明所有的文件都是未修改的狀態,沒有未跟蹤的文件,也沒有修改過未提交的文件。輸出的提示還告訴你,目前在branch master上。關于branch的概念我們將在后面的課程中介紹。
接下來,隨便用一個文本編輯器去修改一下readme.txt里的文字。另外,再向目錄中新建一個test.py文件(也可以從別處copy一個過來)。
再次執行:
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 # # Untracked files: # (use "git add <file>..." to include in what will be committed) # # test.py o changes added to commit (use "git add" and/or "git commit -a")
提示是比較清楚的:readme.txt被修改過了,還有untracked的test.py。提示里也說了,用"git add <file>..."可以添加要提交文件。git add的意思就是,把文件添加到暫存區,也就是我們說的暫存。
那么我們就來用這條命令:
git add readme.txt git add test.py
然后繼續:
git status
再來看結果:
# On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: readme.txt # new file: test.py #
"Changes to be committed"里列出的就是已暫存的文件,它們將在commit時被提交。
執行:
git commit -m 'test file status'
將修改和增加的文件提交。-m后面的參數是提交時的注釋。輸出提示會告訴你這次提交做了哪些改動。
最后再來執行一遍:
git status
可以看到又回到了最初未修改的狀態。剛剛做的所有改動都已經被git所記錄。
通過命令:
git log
可以查看到之前提交的歷史記錄。
在前面的過程中,可能會因為你所用編輯器的備份機制,在目錄中產生一些奇怪的文件,比如readme.txt~。這類文件也會被列在未跟蹤的列表中。下節課我們來說下如何避免這些我們不想關注的文件,以及其他一些在提交過程中的常用到的命令。
恭喜您在Python自學的道路上又堅持了一天,今天我們所講的文件狀態的相關內容你都學會了嗎?你都理解清楚了嗎?下節更精彩,敬請期待!
好啦!今天的分享到這里就結束了,希望大家持續關注馬哥教育官網!每天都會有大量優質內容分享!
聲明:文章來源于網絡,侵刪!