前言:要想成為武林高手,除了要身懷絕技,還需要神兵利器相配。git絕對稱得上是版本管理工具中的倚天劍。正所謂好馬配好鞍,相信用上git的你一定能稱霸碼林,獨步天下! 一、git簡介:git是一個分布式版本控制系統(tǒng),可以有效、高速的處理從很小到非常大的項目版本管理。每個人都有一個完整的版本庫,對任何文件的修改提交操作都是針對本地版本庫,所以無需聯(lián)網(wǎng),速度很快。但是多人協(xié)作如何進行呢?很簡單,你只需要把你的修改推送給對方就可以了。但是這樣互相推來推去很麻煩,所以我們需要一個中央服務(wù)器來中轉(zhuǎn)一下,本質(zhì)上它和你的本地版本庫沒有任何區(qū)別。GitHub和碼云都是這樣的中央服務(wù)器,碼云就相當(dāng)于國產(chǎn)的GitHub。 二、git的安裝:1、下載: 官網(wǎng)下載地址: 2、安裝:下載好了安裝文件后,雙擊,然后選擇安裝路徑,一路next即可。 3、配置:在cmd命令行窗口或git bash界面輸入以下命令:
注意:用這兩個命令設(shè)置用戶名和郵箱,不要用中文! 輸入:
就可以查看到自己剛才輸入的用戶名和郵箱。 三、git的使用:1、git原理: git主要就是3棵樹: 一個是工作區(qū) ------>就是你的project; 一個是暫存區(qū) ------>暫時存儲本地的修改; 一個是git倉庫 ------>保存修改后的內(nèi)容。 2、git工作流程: 在工作目錄添加修改文件 ---> 將需要進行版本管理的文件放入暫存區(qū) ---> 將暫存區(qū)文件提交到git倉庫。 3、初始化: 在你需要進行版本管理的項目的根目錄下右鍵,git bash here ,執(zhí)行如下命令:
在該項目目錄下就會生成一個 .git 隱藏文件夾。 4、查看狀態(tài): 比如現(xiàn)在修改了testproject,新增了一個index.txt文件,那么執(zhí)行
就可以看到這個文件。 5、將修改的文件加到暫存區(qū):
如果修改文件有很多,就執(zhí)行
這就表示把當(dāng)前目錄所有的修改加到暫存區(qū)。 再次執(zhí)行 6、提交到git倉庫:
7、刪除倉庫的文件: 比如我又提交了一個readme.txt,然后又想刪掉:
四、碼云的使用:上面介紹的增刪改都是基于本地倉庫的,一個大型項目需要團隊合作的話,就需要使用GitHub或者碼云了,它們就是用來托管代碼的,你可以把你的修改推送到上面,別人從上面就能獲取到你修改后的代碼。接下來介紹碼云的使用。 1、注冊碼云: 進入碼云官網(wǎng): 2、新建空項目: 3、把本地項目推到碼云: 復(fù)制碼云上項目的地址: 然后在git bash 界面進入到需要上傳的項目根目錄,以剛才的testproject為例,執(zhí)行推送命令:
但是報如下錯誤: 執(zhí)行如下命令:
再次執(zhí)行推送命令,就會要你輸入碼云的用戶名以及密碼,輸入后即可推送成功。 4、團隊合作: 所謂團隊合作就是讓別人也有權(quán)限去讀寫你碼云上的那個項目。 在這里輸入你要添加的成員就可以了。 然后你添加的那個成員執(zhí)行如下命令:
就可以把項目下載下來,然后進行修改。 修改了再按照步驟提交,再推到碼云即可。 5、把碼云上項目下載到本地:
或者
或者直接在碼云上下載zip,如下圖: 注意: clone與pull的區(qū)別:是把碼云上的項目整個拽下來,本地從無到有,pull是指更新分支,本地與碼云上的有差異才能執(zhí)行。 把下載的項目導(dǎo)入eclipse:導(dǎo)入時不能import exiting project into workspace,應(yīng)該 import project from folder or archive,否則會報錯no project found。 6、查看日志:
或
7、版本切換:
版本號就是查看日志時查出的那一串,但是頁不用寫全版本號,寫開頭幾個,能與其他版本取別開來就可以。 如果你用命令回到了修改前的初始狀態(tài),但是后悔了,發(fā)現(xiàn)這修改是有用的,想回到之前的修改狀態(tài),執(zhí)行下面的命令:
這個命令可以查看被你干掉的那些版本的版本號。
這樣就可以隨意的切換版本。 8、分支管理: 分支的理解: 分支其實很好理解,比如有兩條河,它們匯入同一條江,那么這條江就是主線,兩條河就是分支。那么分支有何好處呢?好處就是分支提交之前不會影響主線。比如一個小孩子在河里尿尿,還有一個小孩子在另一條河里洗腳,假設(shè)他們尿尿和洗腳都要手動提交后,攜帶洗腳水和尿的河水才會匯入到那條江中,那么在他們沒有提交之前,江水還是干凈的。雖然比喻不太恰當(dāng),但個人覺得還是能理解的。 分支的操作: 查看分支:
創(chuàng)建分支:
切換分支:
這時候經(jīng)理又說先別管這個功能了,有更重要B功能要完成。那么完成了一半的brand.txt怎么辦?這時就可以執(zhí)行如下命令: 保存提交未完成的分支:
切回到master:
切回到master后,你會發(fā)現(xiàn)剛才新增的brand.txt不見了。 這時候再建一個分支branch2,用于完成B功能。B功能完成后,就add和commit一下,然后切回到master,把branch2分支上的內(nèi)容合并到master上。 合并分支:
9、遠程倉庫配置: 查看該項目在碼云上的地址和地址別名:
刪除該項目地址別名:
為項目地址添加別名:
注意:是地址別名不是項目名 每次push都要輸入用戶名密碼,麻煩得很,所以可以配置公鑰。 配置公鑰后https的地址就不能用了,要換成ssh的地址,執(zhí)行如下步驟: 刪掉https地址:
添加ssh地址:
配置公鑰: 生成公鑰與秘鑰: 這個郵箱就是剛安裝git時,git config user.email時輸入的郵箱 輸入這個命令后一路回車即可。 找到圖中公鑰文件: 這樣再push時就不用輸入用戶名密碼了。 總結(jié):git學(xué)習(xí)內(nèi)容不多,就那幾個命令,一般上傳就是先 |
|