簡易Git工作流
- myname: 團隊成員個人分支
- dev: 團隊公共分支
個人獨立分支開發
- 同步最新的【dev公共分支】到本地。【重要】
- 基于最新的【dev公共分支】,創建【個人功能開發分支】。在此基礎上開發。
- 【個人功能開發分支】開發完成,推送到遠程庫。
- 如果【個人功能開發分支】已被合并到【dev公共分支】,必須刪除。【重要】
命令行示例:
# 拉取最新的dev分支到本地
git pull origin dev# 在現有的dev分支上,創建自己本地的開發分支。并切換過去。
git checkout -b myname# 本地開發,在自己本地倉庫的開發分支中,保存開發進度。
git add .
git commit -m "UPDATE SOMETHING"# 推送自己的分支到遠程倉庫,并提交分支合并請求
git push origin myname# 切換到本地dev分支。使用git checkout dev 或 git switch dev
git checkout dev# 刪除自己的本地分支
git branch -d myname
注意:
- 【個人工作分支】合并到公共分支,有小功能完成,
沒明顯BUG,就可以合并
。比如一個表單頁面。 - 每次創建【個人工作分支】,都是基于最新的【dev公共分支】。
- 為保證第2點,每次線上倉庫合并成功后,當前的【個人工作分支】必須刪掉。
團隊公共分支合并
# 拉取遠程主分支和成員的個人分支
git pull origin dev
git pull origin myname# 保證現有分支為公共分支。查看分支和切換分支命令如下:
# git branch
# git checkout dev 或者 git switch dev
git branch
git switch dev# 合并個人分支到團隊的公共分支中
git merge myname# 測試公共是否正常,有代碼沖突就解決沖突,然后推送到遠程庫
git push origin dev# 刪除成員的個人分支
git branch -d myname
常見分支操作
# 刪除名為myname的遠程分支
git push origin --delete myname# 先切換到其他分支,然后刪除本地myname分支
git switch dev
git branch -d myname
查看
# 查看提交狀態
git status
克隆倉庫
# 克隆包含倉庫的全部提交歷史
git clone https://github.com/odoo/odoo.git# 克隆倉庫包含最近3次提交歷史
git clone --depth 3 -b 17.0 --single-branch https://github.com/odoo/odoo.git odoo17
參數說明:
--depth 3
: 只克隆最近提交的3條記錄到本地。-b 17.0 --single-branch
: 只拉取分支17.0
拉取倉庫
git pull <遠程主機名> <遠程分支名>:<本地分支名>
git pull origin master:master# 簡寫
git pull
推送倉庫
git push
git push origin master:master
新建和切換分支
- https://git-scm.com/docs/git-branch/zh_HANS-CN
- https://git-scm.com/docs/git-switch/zh_HANS-CN
# 創建全新的空白分支 git version < 2.23
git checkout --orphan <branch># 創建全新的空白分支 git version >= 2.23
git switch --orphan <new_branch_name>
git switch和git checkout
遠程庫增刪改查
git remote add <遠程庫名> <遠程庫地址>
git remote remove <遠程庫名>
git remote rename <原遠程庫名> <新遠程庫名>
git remote set-url <遠程庫名> <遠程庫地址># 查看所有遠程庫信息
git remote -v
git 創建空分支 https://blog.csdn.net/linyichao1314/article/details/136956650
Git 實用技巧2——新建空白分支 | 重命名分支 | 回退到歷史 commit https://blog.csdn.net/m0_49270962/article/details/137759940