当前位置: 首页 > news >正文

Git团队开发命令总结

简易Git工作流

  • myname: 团队成员个人分支
  • dev: 团队公共分支

个人独立分支开发

  1. 同步最新的【dev公共分支】到本地。【重要】
  2. 基于最新的【dev公共分支】,创建【个人功能开发分支】。在此基础上开发。
  3. 【个人功能开发分支】开发完成,推送到远程库。
  4. 如果【个人功能开发分支】已被合并到【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

注意:

  1. 【个人工作分支】合并到公共分支,有小功能完成,没明显BUG,就可以合并。比如一个表单页面。
  2. 每次创建【个人工作分支】,都是基于最新的【dev公共分支】。
  3. 为保证第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

相关文章:

  • 数字人训练数据修正解释
  • java 并发编程-ReentrantLock
  • python识别扫描版PDF文件,获取扫描版PDF文件的文本内容
  • 二叉树搜索树与双向链表
  • hackmyvm-flossy
  • AWS用Glue读取S3文件上传数据到Redshift,再导出到Quicksight完整版,含VPC配置
  • Android: Fragment 的使用指南
  • 004 健身房个性化训练计划——金丹期(体态改善)
  • 汇编学习之《数据传输指令》
  • 远程装个Jupyter-AI协作笔记本,Jupyter容器镜像版本怎么选?安装部署教程
  • Rust 语言语法糖深度解析:优雅背后的编译器魔法
  • VoIP技术及其与UDP的关系详解
  • 五类线和六类线
  • 洛谷: P1825 [USACO11OPEN] Corn Maze S
  • 揭秘:父子组件之间的传递
  • Redis批量操作详解
  • Scala的基本语法(二)
  • Python第七章03:文件写入操作
  • JS判断对象是否为空的方法
  • 移动端六大语言速记:第4部分 - 数据结构
  • 金汇网站建设/深圳最新政策消息
  • 什么网站的易用性/东莞seo建站优化哪里好
  • 如何创新网站建设模式/seo快速排名优化方式
  • mysql网站服务价格/百度推广的渠道有哪些
  • 网站建设深圳公司/公司地址怎么弄在百度上显示
  • 建设网站的3个必要条件/整站优化加盟