場景:
在我們在參與項(xiàng)目開發(fā)的時(shí)候精肃,通常會創(chuàng)建公共的文件据过,但是當(dāng)我們編碼完成可岂,使用git進(jìn)行分支合并時(shí)领炫,往往會出現(xiàn)合并沖突宜猜,也就是負(fù)責(zé)不同部分的開發(fā)人員會對同一個(gè)文件的同一個(gè)部分進(jìn)行修改块请,這個(gè)時(shí)候就需要我們解決合并造成的沖突亡呵。
本文主要內(nèi)容:
- 回顧git的常用命令
- 解決合并造成的沖突
1.git的常用命令
1.1 git的基本操作和命名
(1)在需要git管理的文件夾中點(diǎn)擊鼠標(biāo)右鍵 ==》選擇git bash here
(2)ctr +/- 可以設(shè)置窗口文字的大小
(3)git init 初始化git倉庫
(4)設(shè)置個(gè)人信息抬探,方便溯源(只有第一次安裝之后才需要設(shè)置)
git config --global user .email"you@example.com"
git config --global user .name"Your name"
(5)git :工作目錄絮供,暫存區(qū)衣吠,本地倉庫
(6)將“工作目錄”中的文件存放在“暫存區(qū)”
git add 文件名 /* 或者 /.
* 和 . 代表的是工作目錄下的所有文件
(7)將“暫存區(qū)”里的文件提交到本地倉庫,形成提交的記錄
git commit-m '自定義提交信息/定制化提交信息'
(8)查看當(dāng)前詳細(xì)的提交信息
git log
(9)查看當(dāng)前操作信息--主要可以查看對應(yīng)版本的ID號
git reflog
(10)回到指定的版本
git reset --hard 版本號
(11)獲取當(dāng)前狀態(tài)
不會對文件造成影響 當(dāng)你不知道到那一步壤靶,可以使用該指令查看當(dāng)前的git狀態(tài)
git status
(12)刪除工作區(qū)文件缚俏,并且將這次刪除放入暫存區(qū)
git rm
1.2 單人版本管理:常用操作
1. git init 初始化
2. git add . /git add * 提交暫存區(qū)
3. git commit -m '提交信息' 提交本地倉庫(形成提交記錄,后續(xù)可以回檔)
4. git status 查看文件狀態(tài)
5. git reflog 查看操作信息
6. git reset --hard 版本號 回到指定的版本
1.3 分支相關(guān)
多人維護(hù)同一個(gè)項(xiàng)目必須要熟練使用 一般會基于master主分支
再去新建一個(gè)develop分支-開發(fā)分支
再基于develop分支贮乳,再去創(chuàng)建各個(gè)功能模塊的分支feature-X
(1)創(chuàng)建分支
git branch 分支名
(2)切換到分支名
git checkout 分支名
(3)查看本地和遠(yuǎn)程所有分支
git branch
git branch -a
(4) 合并分支
先切換目標(biāo)分支(也就是想要合并到哪個(gè)分支)忧换,指定需要合并的分支名
git merge 分支名
1.4 遠(yuǎn)程倉庫
(1)新建倉庫
(2)將本地倉庫代碼 推動到遠(yuǎn)程倉庫
1.5 本地倉庫和遠(yuǎn)程倉庫之間的操作
(1)本地分支推送到遠(yuǎn)程分支
git push -u origin "本地分支名"
(2)遠(yuǎn)程分支拉取到本地
git pull
(3)克隆遠(yuǎn)程倉庫的內(nèi)容
git clone HTTPS/SSH
2.提交自己開發(fā)部分的代碼
2.1 基本命令
git branch 分支名
git checkout 目標(biāo)分支
git add .
git commit -m '提交信息'
git push -u origin 分支名
2.2 造成沖突的情況
合并沖突時(shí)會出現(xiàn) 分支名|merging
2.3 解決方案
(1)在遠(yuǎn)程倉庫里合并的時(shí)候解決
1.先將自己的分支(例如feature-XXX)中修改的內(nèi)容放到本地倉庫
git add .
git commit -m '提交信息'
2.把本地倉庫的內(nèi)容push到遠(yuǎn)程倉庫
git push -u origin '遠(yuǎn)程倉庫地址'
3.在遠(yuǎn)程倉庫進(jìn)行合并操作,提出合并申請
4.一般由項(xiàng)目經(jīng)理進(jìn)行合并處理
5.出現(xiàn)沖突在遠(yuǎn)程倉庫進(jìn)行操作(如下面第二種方式向拆,選擇接受兩者進(jìn)行合并)
(2)先將遠(yuǎn)程倉庫中的對應(yīng)分支代碼pull下來亚茬,然后再本地進(jìn)行代碼合并merge
1.先將自己的分支(例如feature-XXX)中修改的內(nèi)容放到本地倉庫
git add .
git commit -m '提交信息'
2.再將遠(yuǎn)程分支的development同步到本地倉庫,切換到development分支浓恳,再執(zhí)行pull
git checkout development
git pull
3.在本地合并development和feature-XXX刹缝,在development中merge feature-XXX
git merge feature-XXX
4.再將本地development push到遠(yuǎn)程倉庫
git push 遠(yuǎn)程倉庫地址(HTTPS/SSH)
3.一張圖讓你看懂git命令使用流程
在查看資料的過程中,發(fā)現(xiàn)一個(gè)作者(小紅書:烏龜烏龜慢慢爬)上傳的圖片颈将,十分清晰明了梢夯,生動形象,轉(zhuǎn)載過來分享給大家晴圾!