wordpress怎么上傳logo百度關鍵詞優(yōu)化工具
1.創(chuàng)建 Git 本地倉庫
倉庫是進?版本控制的?個?件?錄。我們要想對?件進?版本控制,就必須先創(chuàng)建?個倉庫出來,例如下面代碼創(chuàng)建了gitcode_linux的文件夾,之后再對其進行初始化。創(chuàng)建?個 Git 本地倉庫對應的命令為 git init ,注意命令要在?件?錄下執(zhí)?,例如

我們發(fā)現,當前?錄下多了?個 .git 的隱藏?件, .git ?錄是 Git 來跟蹤管理倉庫的,不要?動修改這個?錄??的?件,不然改亂了,就把 Git 倉庫給破壞了。其中包含 Git 倉庫的諸多細節(jié),我們可以進?看看。

2.配置 Git
當安裝 Git 后?先要做的事情是設置你的??名稱 和 e-mail 地址,這是?常重要的。配置命令為:
git config [--global] user.name "Your Name"
git config [--global] user.email "email@example.com"
# 把 Your Name 改成你的昵稱
# 把 email@example.com 改成郵箱的格式,只要格式正確即可。
其中 --global 是?個可選項。如果使?了該選項,表?這臺機器上所有的 Git 倉庫都會使?這個配置。如果你希望在不同倉庫中使?不同的 name 或 e-mail ,可以不要 --global 選項,但要注意的是,執(zhí)?命令時必須要在倉庫?。即下面代碼執(zhí)行的路徑在gitcode_linux下。

查看配置命令為:
git config -l
刪除對應的配置命令為:
git config [--global] --unset user.name
git config [--global] --unset user.email
3. 認識?作區(qū)、暫存區(qū)、版本庫
? ?作區(qū):是在電腦上你要寫代碼或?件的?錄。
? 暫存區(qū):英?叫 stage 或 index。?般存放在 .git ?錄下的 index ?件(.git/index)中,我們把暫存區(qū)有時也叫作索引(index)。
? 版本庫:?名倉庫,英?名 repository 。?作區(qū)有?個隱藏?錄 .git ,它不算?作區(qū),?是 Git 的版本庫。這個版本庫??的所有?件都可以被 Git 管理起來,每個?件的修改、刪除,Git 都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以“還原”。
下?這個圖展?了?作區(qū)、暫存區(qū)和版本庫之間的關系:

? 圖中左側為?作區(qū),右側為版本庫。Git 的版本庫?存了很多東西,其中最重要的就是暫存區(qū)。
? 在創(chuàng)建 Git 版本庫時,Git 會為我們?動創(chuàng)建?個唯?的 master 分?,以及指向 master 的?個指針叫 HEAD。
? 當對?作區(qū)修改(或新增)的?件執(zhí)? git add 命令時,暫存區(qū)?錄樹的?件索引會被更新。
? 當執(zhí)?提交操作 git commit 時,master 分?會做相應的更新,可以簡單理解為暫存區(qū)的?錄樹才會被真正寫到版本庫中。
由上述描述我們便能得知:通過新建或粘貼進?錄的?件,并不能稱之為向倉庫中新增?件,?只是在?作區(qū)新增了?件。必須要通過使? git add? 和 git commit? 命令才能將?件添加到倉庫中進?管理!!!
4. 添加?件
在包含 .git 的?錄下新建?個 ReadMe ?件,我們可以使? git add 命令可以將?件添加到暫存區(qū):
? 添加?個或多個?件到暫存區(qū): git add [ file1 ] [ file2 ] ...
? 添加指定?錄到暫存區(qū),包括??錄: git add [ dir ]
? 添加當前?錄下的所有?件改動到暫存區(qū): git add .
再使? git commit 命令將暫存區(qū)內容添加到本地倉庫中:
? 提交暫存區(qū)全部內容到本地倉庫中: git commit - m "message"
? 提交暫存區(qū)的指定?件到倉庫區(qū): git commit [ file1 ] [ file2 ] ... - m "message"
注意 git commit 后?的 -m 選項,要跟上描述本次提交的 message,由????完成,這部分內
容絕對不能省略,并要好好描述,是?來記錄你的提交細節(jié),是給我們?看的。

git commit 命令執(zhí)?成功后會告訴我們,1個?件被改動(就是我們新添加的ReadMe?件)。
我們還可以多次 add 不同的?件,?只 commit ?次便可以提交所有?件,是因為需要提交的?件是通通被 add 到暫存區(qū)中,然后?次性 commit 暫存區(qū)的所有修改。

截??前為?,我們已經更夠將代碼直接提交?本地倉庫了。我們可以使? git log 命令,來查看 下歷史提交記錄:

該命令顯?從最近到最遠的提交?志,并且可以看到我們 commit 時的?志消息。如果嫌輸出信息太多,看得眼花繚亂的,可以試試加上 --pretty=oneline 參數.

需要說明的是,我們看到每行最前面的??串類似 7ba3...aeb6? 的是每次提交的 commit id (版本號),Git 的 commit id 不是1,2,3……遞增的數字,?是?個 SHA1 計算出來的?個?常?的數字,??六進制表? 。
5.查看 .git ?件
先來看看我們的 .git 的?錄結構:

1. index 就是我們的暫存區(qū),add 后的內容都是添加到這?的。
2. HEAD 就是我們的默認指向 master 分?的指針:

?默認的 master 分?,其實就是:

打印的 7ba3a19c5990b6a0949f89cc70e1a307cdb3aeb6 是什么東西呢?實際上是當前最新的 commit id 。
3. objects 為 Git 的對象庫,??包含了創(chuàng)建的各種版本庫對象及內容。當執(zhí)? git add 命令時,暫存區(qū)的?錄樹被更新,同時?作區(qū)修改(或新增)的?件內容被寫?到對象庫中的?個新的對象中,就位于 ".git/objects" ?錄下。
找到某個?件之后,?般不能直接看到??是什么,該類?件是經過 sha (安全哈希算法)加密過的?件,好在我們可以使? git cat-file?-p + 該文件commit id 命令來查看版本庫對象的內容。下面我們以HEAD指針指向的文件為例,即最新的一次文件提交。

其中,還有?? tree 349e7a9afb8b97e6f2a9a632cf783f188da5fe1a ,我們使?同樣的?法,看看結果:

總結?下,在本地的 git 倉庫中,有?個?件或者?錄很特殊
? index: 暫存區(qū), git add 后會更新該內容。
? HEAD: 默認指向 master 分?的?個指針。
? refs/heads/master: ?件?保存當前 master 分?的最新 commit id 。
? objects: 包含了創(chuàng)建的各種版本庫對象及內容,可以簡單理解為放了 git 維護的所有修改。
6.修改?件
Git ?其他版本控制系統(tǒng)設計得優(yōu)秀,因為 Git 跟蹤并管理的是修改,???件。什么是修改??如新增了??,這是?個修改,刪除了??,也是?個修改,更改了某些字符,也是?個修改,刪了?些?加了?些,也是?個修改,甚?創(chuàng)建?個新?件,也算?個修改。讓我們將 ReadMe ?件進??次修改,增加三行hello world:

此時,倉庫中的 ReadMe 和我們?作區(qū)的 ReadMe 是不同的,如何查看當前倉庫的狀態(tài)呢? git status 命令?于查看在上次提交之后是否有對?件進?再次修改。

上?的結果告訴我們,ReadMe 被修改過了,但還沒有完成添加與提交。?前,我們只知道?件被修改了,如果能知道具體哪些地?被修改了,就更好了。 git diff [file] 命令?來顯?暫存區(qū)和?作區(qū)?件的差異,顯?的格式正是Unix通?的diff格 式。也可以使? git diff HEAD -- [file] 命令來查看版本庫和?作區(qū)?件的區(qū)別。

我們再使用git add命令把它提交到本地倉庫。

我們沒有再看到上? no changes added to commit (use "git add" and/or "git commit -a") 的消息了。接下來讓我們繼續(xù) git commit 即可。
