1.常用命令
git init # 初始化本地倉庫 git add 文件/. # 工作區提交文件到暫存區 . 提交所有文件
git reset HEAD 文件/. # 從暫存區回滾到工作區
git config --global user.name '用戶名'
git config --global user.email '郵箱'
git commit -m '注釋' # 工作區提交到代碼到版本庫 在commit 到本地倉庫之前要創建用戶
git remote 源名 源地址 # 添加遠程源
git remote add origin git@gitee.com:bigbox110/dd.git
工作區回滾到以前的版本: git reset --hard~ 前一個版本 , git reset --hard~3 回到前三個版本
git log 查看日志, git log --author bigbox 查看某個人的日志
git reflog 查看所有歷史版本 git reset --hard 版本名
# 過濾文件
.gitignore 文件
a.txt:項目中所有a.txt文件和文件夾都會被過濾
# 分支管理 本地分支與遠程分支一致
git branch dev #創建dev分支
git branch # 查看所有分支 默認為master分支
git checkout dev # 切換到dev分支
git branch -d dev # 刪除dev分支
git merge 分支名 # 合並分支
把dev分支合並到master分支:切換到master分支,執行合並dev分支的命令
2.遠程倉庫:
### remote源操作 ```python """ 1)查看倉庫已配置的遠程源 >: git remote >: git remote -v 2)查看remote命令幫助文檔 >: git remote -h 3)刪除遠程源 >: git remote remove 源名 eg: git remote remove origin 4)添加遠程源 >: git remote add 源名 源地址 >: git remote add orgin git@gitee.com:doctor_owen/luffyapi.git 5)提交代碼到遠程源 >: git push 源名 分支名 6)克隆遠程源 >: git clone 遠程源地址 """ """ 1)通過克隆方式連接遠程源,默認遠程源名就叫origin;所以主動添加遠程源來連接遠程倉庫,源碼也用origin 2)本地一個倉庫只需要和遠程一個源進行同步,所以只需要連接一個遠程源,如果還想把本地代碼同步給第三個平台,那么可以通過主動添加遠程源來連接第三個平台的遠程倉庫,
此時的源碼就不能再叫origin了,比如online都可以 3)pull和push都可以提供選擇不同的源碼,和不同的遠程倉庫交互 """
2.線上倉庫初始化
重點來了:
1)你作為項目經理 倉庫初始化人員: 線上要創建空倉庫 => 本地初始化好倉庫 => 建立remote鏈接(remote add) => 提交本地倉庫到遠程(push)
步驟1: 線上創建空倉庫
步驟2: 初始化本地倉庫,git init git add . 創建賬號 git commit -m 'test'
步驟3: 連接遠程倉庫 git remote add origin git@gitee.com:bigbox110/test02.git
步驟4: 配置密鑰,開發者權限
復制命令 ssh-keygen -t rsa -C "1627256534@qq.com" 執行
生成本地公鑰、私鑰
線上添加公鑰 , 添加開發者
本地提交代碼到服務器
git push origin master
2)你作為項目后期開發人員: 遠程項目倉庫已經創建成功 => 復制遠程倉庫到本地(clone) => 進入倉庫就可以進行接下來的開發
步驟1: 創建空文件git clone
git clone git@gitee.com:bigbox110/test02.git
步驟2: 切換分支 拉取dev分支
每天開始 先 git pull origin dev
3.項目開發者
特殊任務:在哪個分支上面創建分支就和就復制了當前分支創建了一個新的分支 在dev 上面創建一個新的分支dev1
開發完成后,切換到dev 分支 merge dev1 ,再刪除dev1
1)作為開發者,第一次同步項目(前提已經是項目開發者了) >: git clone 項目地址 2)保證自己本地有dev分支,且與遠程倉庫版本同步(沒有就自己新建) 3)本地開發的代碼,必須add、commit到本地版本庫后,才和遠程倉庫進行交互 4)交互順序:必須 先拉(pull)后提(push) 協同開發直接push 會報錯,要先pull 5)必須切換到要交互的分支,在與遠程同名的分支進行交互,如本地dev與遠程dev交互 >: git checkout dev >: git add . >: git commit -m '本次提交的信息提示' >: git pull origin dev >: git push origin dev
線上分支管理
服務器分支管理:項目經理 可以在服務器上創建分支,也可以在本地push上去,master分支一般設置為保護分支 管理員可以操作
git沖突解決 同時修改了同一個文件,pull的時候沖突
1)在遠程倉庫和本地倉庫版本不一致時,拉取(pull)遠程倉庫版本到本地時,兩個版本進入融合,可能會出現版本沖突 2)定位本地沖突文件沖突代碼,線下溝通沖突代碼,整合代碼解決沖突 3)將解決沖突后的代碼重新提交到本地版本庫 4)再拉去遠程倉庫,直到沒有沖突,提交本地版本庫到遠程
線上合並分支
遠程回滾
用dev分支舉例 1)本地切換到遠程要回滾的分支對應的本地分支 git checkout dev 2)回滾本地分支 git reset --hard 版本號 3)本地版本強行提交給服務器 git push origin dev -f