將尚未進行版本控制的本地目錄轉換為Git倉庫,從其它服務器克隆一個已存在的Git倉庫,這兩種方式都能夠在自己的電腦上得到一個可用的Git倉庫。
如果自己有一個尚未進行版本控制的項目目錄,想要用 Git 來控制它,需要執行如下兩個步驟:
① 在項目目錄中,通過鼠標右鍵打開“Git Bash”
② 執行 git init 命令將當前的目錄轉化為 Git 倉庫
git init 命令會創建一個名為 .git 的隱藏目錄,這個 .git 目錄就是當前項目的 Git 倉庫,里面包含了初始的必要文件,這些文件是 Git 倉庫的必要組成部分。
工作區中的每一個文件可能有 4 種狀態,這四種狀態共分為兩大類,如圖所示:
Git 操作的終極結果:讓工作區中的文件都處于“未修改”的狀態。
可以使用 git status 命令查看文件處于什么狀態,例如:
在狀態報告中可以看到新建的 index.html 文件出現在 Untracked files(未跟蹤的文件) 下面。未跟蹤的文件意味著 Git 在之前的快照(提交)中沒有這些文件;Git 不會自動將之納入跟蹤范圍,除非明確地告訴它“我需要使用 Git 跟蹤管理該文件”。
使用 git status 輸出的狀態報告很詳細,但有些繁瑣。如果希望以精簡的方式顯示文件的狀態,可以使用如下兩條完全等價的命令,其中 -s 是 –short 的簡寫形式:
#以精簡的方式顯示文件狀態
git status -s
git status --short
未跟蹤文件前面有紅色的 ?? 標記,例如
使用命令 git add 開始跟蹤一個文件。 所以,要跟蹤 index.html 文件,運行如下的命令即可:
git add index.html
此時再運行 git status 命令,會看到 index.html 文件在 Changes to be committed 這行的下面,說明已被跟蹤,并處于暫存狀態:
也可以以精簡的方式顯示文件的狀態新添加到暫存區中的文件前面有綠色的 A 標記
現在暫存區中有一個 index.html 文件等待被提交到 Git 倉庫中進行保存??梢詧绦?git commit 命令進行提交,其中 -m 選項后面是本次的提交消息,用來對提交的內容做進一步的描述:
git commit-m"新建了index.html文件"
提交成功之后,會顯示如下的信息:
提交成功之后,再次檢查文件的狀態,得到提示如下:
證明工作區中所有的文件都處于“未修改”的狀態,沒有任何文件需要被提交。
8. 對已提交的文件進行修改
目前,index.html 文件已經被 Git 跟蹤,并且工作區和 Git 倉庫中的 index.html 文件內容保持一致。當我們 修改了工作區中 index.html 的內容之后,再次運行 git status 和 git status -s 命令,會看到如下的內容:
文件 index.html 出現在 Changes not staged for commit 這行下面,說明已跟蹤文件的內容發生了變化,但還沒有放到暫存區。
注意:修改過的、沒有放入暫存區的文件前面有紅色的 M 標記。
目前,工作區中的 index.html 文件已被修改,如果要暫存這次修改,需要再次運行 git add 命令,這個命令 是個多功能的命令,主要有如下 3 個功效:
① 可以用它開始跟蹤新文件
② 把已跟蹤的、且已修改的文件放到暫存區
③ 把有沖突的文件標記為已解決狀態
再次運行 git commit -m “提交消息” 命令,即可將暫存區中記錄的 index.html 的快照,提交到 Git 倉庫中進行保存: