一、 什么是git?
1.直接來說:git是一個分布式的版本控制工具
? 其中分布式是git的一個特點 說到分布式相對應的還有集中式,下面就以git和svn為例說下分布式和集中式兩者的區別,
-
1.分布式:在網路不好的情況下,不受影響,只要下載到本地后 , 可以暫存到本地倉庫,等網路好的情況下再push到服務器, 這樣每個電腦都可以看作是一個獨立的服務器, 不受互相的影響,例如:git -
2.集中式:只有一臺中心服務器,用來連接多臺設備,所有的上傳下載都要經過中心服務器, 如果網路不好或者服務器問題就會影響正常的使用, 例如:svn
二 、如何使用git?
1.安裝git客戶端
git的下載地址:http://git-scm.com/download/,
Git支持多平臺(Mac OS X/Windows/Linux/Solaris)
2.注冊github或者gitee的賬號
? (1) GitHub來說更國際化,使用也是最多的,但是因為在國外網站,所以來說登錄使用GitHub時不太友好,
? (2) GitEe是國內的git倉庫,相對于GitHub來說,功能和使用方法基本一致,比起GitHub操作更快,更容易訪問,
3.建立連接,配置密鑰
? 本地Git與GitHub服務器之間保持通信時,,使用SSH key認證方式來保證通信安全,所以在使用GitHub前你必須先建創自已的SSH key,
1.在Git Base Here中輸入 :ssh-keygen -t ed25519 -C "你的郵箱名@xxx.com" 來獲取你的密鑰,
輸出的地址是密鑰存放的地址,其中密鑰:id_rsa 公鑰:id_rsa.pub,只需要復制你的公鑰即可,

2.打開你的GitHub中密鑰生成,把你的密鑰添加到github中即可,就可以通過GitHub的地址鏈接進行上傳下載

三 、git的上傳和拉取
1.簡單的通過本地初始化上傳檔案到GitHub的命令列操作
(1).創建新的檔案夾在檔案夾的Git Base Here中初始化檔案夾,
初始化命令:git init
? 初始化后的檔案夾中會多出一個.git的檔案,如果沒有去打開檔案的隱藏檔案顯示,

?
(2).在當前檔案中把每次上傳的內容添加檔案到暫存區,
添加到暫存區命令列: git add '你要上傳的檔案名'
或者通過全部添加命令列直接添加:git add .
(3).然后將每次上傳的檔案再提交到本地倉庫,
添加到本地倉庫命令列:git commit -m '這里是對于本次提交的說明'

(4).提交到遠程倉庫(也稱代碼托管平臺):github、碼云、gitlab,這里使用GitHub,
提交到遠程倉庫的步驟:
第一步:創建一個遠程倉庫,點擊登錄后右上角的+,按步驟完成即可
注意:
遠程要定要配置好公鑰/密鑰
ssh-keygen -t ed25519 -C "你的郵箱名@126.com"
密鑰:id_rsa 公鑰:id_rsa.pub
測驗是否連接成功:ssh -T git@github.com
第二步:配置要連接的遠程倉庫地址
配置地址命令列:git remote add 倉庫名稱 遠程倉庫地址
例如:git remote add origin git@github.com:w3cteching/05Epro.git
第三步:再推送到遠程
推送到遠程倉庫命令列:git push 倉庫名 本地分支名
例如:git push origin master
***注意:如果遠程沒有master分支,push以后則會在遠程倉庫創建一個新的masrer分支,如果要把內容添加到遠程倉庫已有的分支則輸入命令列:git push 倉庫名 本地分支名:遠程分支名 ,前提是先要把遠程分支內容拉取到本地才可以添加到遠程分支上,

通過上面的命令列就可以把檔案上傳到遠程倉庫 可以在遠程倉庫中查看是否添加成功,
2.把遠程倉庫的內容拉取到本地倉庫
只拉取到本地,不合并分支
拉取命令列:git pull 倉庫名 遠程分支名 --allow-unrelated-histories
其中:allow-unrelated-histories代表允許不相關的歷史記錄
四 、歷史回退
1.查看提交歷史記錄
(1).詳細查看歷史記錄命令列:git log
(2).縮略查看歷史記錄命令列:git log --pretty=oneline
(3).查看所有的提交commit_id的命令列:git reflog --pretty=oneline
2.回退到過去或者現在
(1).回退到過去的命令列:git reset --hard commit_id
注意:因為歷史記錄是從上到下是從近到遠的操作,回退后歷史記錄回從上消失
五、分支管理
1.分支的作用
方便團隊之間協作開發,分支之間的代碼互不影響
git init 初始化完后,默認本地只有一個分支 master
2.一般前端開發專案分支結構
master:主分支,這個分支上不做專案開發,用于發布產品的分支
dev:開發分支
hotfix:調度bug的分支
feature:開發新功能的功能
成員分支:例如:姓名_功能
3.分支常用命令
1.查看分支:git branch
例如:
main
* master //分支前帶*,當前要操作的分支
2.創建分支: git branch 新分支名
3.切換分支: git checkout 要切換的分支名
4.自動創建并分支:git checkout -b 要創建和切換的分支
5.合并分支:git merge 要合并的分支
注意:如果多人修改同一個檔案,出現沖突,先解決沖突(采用當前的,采用傳入,兩者都保留),再add,commit
6.分支提交到遠程
git push origin 要提交的分支名
7.洗掉分支
(1)洗掉已經合并過的分支
git branch -d 要洗掉的分支名
(2)洗掉未被合并的分支
git branch -D 要洗掉的分支名
(3)洗掉遠程分支:
git push origin :要洗掉的分支名
六、克隆(clone)倉庫
git clone 遠程倉庫地址
例如: git clone git@github.com:vuejs/vue.git
克隆是相對方便快捷的操作方式可以直接把遠程的倉庫內容克隆到本地然后進行開發和上傳,克隆的方式的本地倉庫默認系結設定了克隆的那個地址不需要重復設定,
七、前端團隊一般的git協作方式
第一步:組長先克隆遠程倉庫
git clone 組長給的倉庫地址
第二步:組長克隆完進入倉庫檔案夾,寫公共代碼,再add,commit,最后push到剛才的倉庫上
第三步:組長將組員添加到《倉庫成員管理》中,注意:權限用開發者權限
第四步:組員第一次克隆組長倉庫,然后在本地創建好dev和自己名稱的分支
第五步:組員切換到自己名稱的分支上,然后撰寫自己負責的代碼,再git push origin 自己分支名到遠程倉庫
第六步:另一個組員操作同上面的組員,只不過如果需要上面組員的代碼,必須將那個組員分支git pull自己的分支下
八、git可視化操作
1.git bash 命令列操作
2.git GUI 可視化操作,或稱圖形圖面操作
九、git倉庫的打版本
1.查看版本
git tag
2.打版本
git tag 版本號
3.洗掉版本:
本地洗掉:git tag -d 版本名
遠程洗掉:git tag :要洗掉的版本名
4.推送版本:git push origin 版本名
版本號格式:vxx.xx.xx
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/271998.html
標籤:其他
上一篇:作為iOS開發,這道面試題你能答出來,說明你基礎很OK!
下一篇:JavaScript陣列方法總結
