Git使用指導
目錄結構:
---------------------------------------分割線:正文--------------------------------------------------------
1、版本控制:
版本迭代,版本管理器
2、作用:
多人協同開發、追蹤和記載歷史記錄、組織和包含源代碼和文檔、統計工作量、並行開發提高效率、跟蹤記錄開發過程、減輕開發人員負擔節省時間。
3、常用版本控制工具:
GIt、SVN、CVS、VSS、TFS等
3、版本控制的分類:
本地版本控制:本地版本管理
集中版本控制:所有的版本數據都保存在服務器早上,協同開發者從服務器上同步更新或上傳自己的修改
分布式版本控制:所有的版本信息倉庫都同步的本地的每個用戶:每個人都擁有全部的代碼
4、Git與svn的區別
即集中版本控制SVN與分布式版本控制的區別Git的區別,Git是目前世界上最先進的分布式版本控制系統。
1、Git之父
GIt之父即Linux之父:Liuns Torvalds(1969,芬蘭)
2、歷史
1991-2002年,BitKeeper商業公司來管理和維護代碼
Liunx Torvalds兩周開發出Git,並且免費使用,用於Liunx的開發
1、Git官網:
https://git-scm.com/
根據不同的系統下載:windows/Liunx/Mac,速度慢時找鏡像的下載
2、git卸載與安裝:
卸載時最好清除對應的path系統環境變量:卸載與安裝均為無腦操作。
3、Git菜單
Git安裝完成后開始菜單有如下三個選項:
Git Bash:Unix與Liunx風格的命令行,使用最多,推薦使用
GIt CMD:Windows風格的命令行
Git GUI:圖形界面的Git,不建議初學者使用,盡量先熟悉命令
4、Git配置:
(1)查看配置:git config -l
(2)查看系統配置:git config --system --list
(3)查看本地配置:git config --global -l
(4)配置用戶名:git config --global user.name "mrwhite"
(5)配置郵箱:git config --global user.email 114558020@qq.com
1、工作區域
(1)工作區(Working Directory):平時存放代碼的地方
(2)暫存區(Stage/Index):用戶臨時存放你的改動的文件
(3)資源庫(Repository/Git Directory):就是安全存放數據的位置,這里面有你提交到所有版本的數據。其中HEAD指向最新放入倉庫的版本
(4)遠程倉庫(Remote):一般為代碼托管的服務器,如Github或Gitee
Directory:使用Git管理的一個目錄,也就是一個倉庫,包含我們的工作空間和Git的管理空間。
WorkSpace:需要通過Git進行版本控制的目錄和文件,這些目錄和文件組成了工作空間。
.git:存放Git管理信息的目錄,初始化倉庫的時候自動創建。
Index/Stage:暫存區,或者叫待提交更新區,在提交進入repo之前,我們可以把所有的更新放在暫存區。
Local Repo:本地倉庫,一個存放在本地的版本庫;HEAD會只是當前的開發分支(branch)。
Stash:隱藏,是一個工作狀態保存棧,用於保存/恢復WorkSpace中的臨時狀態。
2、Git工作流程:
(1)在工作目錄中添加、修改文件
(2)將需要進行版本管理的文件放入暫存區域:git add
(3)將暫存區的文件提交到git倉庫:git commit
(4)將提交的內容推送到遠程倉庫:git push
因此,git管理的文件有三種狀態:已修改(modified),已暫存(staged),已提交(commit)
本地倉庫的搭建:核心6條命令
(1)初始化當前項目:
git init
(2)克隆遠程倉庫到本地
git clone git@github.com:bigwhite2020/bigwhite2020.git
1、查看文件狀態
git status
2、添加文件至暫存區
git add .
3、提交暫存區內容至本地倉庫
git commit -m "new file helloworld"
4、忽略文件操作
.gitignore文件可以定義要忽略的文件
過濾文件夾: /build/ 過濾某種類型的文件: *.tmp 過濾某各文件: /Build/Products/test.app !開頭表示不過濾: !*.c , !/dir/subdir/ 支持通配符: *.[oa] 過濾repo中所有以.o或者.a為擴展名的文件
1、github有牆,國內建議使用gitee,公司搭建一般使用gitlab服務器
2、碼雲的使用:
(1)網址:https://gitee.com/
(2)設置本機SSH公鑰並注冊,實現免密登錄
碼雲->設置->SSH公鑰->添加公鑰->參考幫忙文檔:https://gitee.com/help/articles/4191
(3)新建倉庫
(4)git clone遠程倉庫到本地:
git clone git@gitee.com:mrwhite2021/gitstudy.git
參考以下章節:https://www.cnblogs.com/mrwhite2020/p/14727599.html
1、git類似與科幻電影中的平行宇宙,互不干擾,如果兩個平行宇宙重合,需要解決其中可能出現的沖突
2、分支常用命令:
(1)查看分支:
git branch
(2)查看遠程分支:
git branch -r
(3)新建分支:(但依舊停留在master分支)
git branch dev
(4)切換分支:
git checkout dev
(5)新建並切換分支:
git checkout -b dev
(6)刪除分支,不能在當前分支下:
git branch -d dev
(7)合並分支到當前分支
git merge dev
(8)刪除遠程分支
git push origin --delete dev
git branch -dr dev
(9)解決合並分支時沖突,選擇保留的代碼並重新合並