回归,git 分支开发操作命令

核心分支说明

  1. **主分支(master/production)**存放随时可部署到生产环境的稳定代码,仅接受通过测试的合并请求。

  2. **开发分支(develop)**集成所有功能开发的稳定版本,日常开发的基础分支,从该分支创建特性分支

  3. 特性分支(feature/*) 命名规范:feature/功能描述_开发者标识(如feature/login_zhangsan

    开发流程:

    • git merge develop # 定期同步主干代码

    • git push origin feature/new_module # 推送远程

    • git pull origin develop

    • git checkout -b feature/new_module # 从develop创建分支

git 分支开发命令

|----------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 操作 | 命令 |
| 查看当前分支 | git branch(git branch -a 查看所有分支) |
| 从仓库拉取分支 | git fetch origin 分支名 |
| 切换分支 | git checkout 分支名 (将当前分支的修改带过去 git checkout -b 分支名) |
| 拉取最新分支 | git pull origin 分支名 (pull=fetch+merge) |
| 删除未跟踪的和未添加到暂存区的文件和目录 | git clean -n 预览 git clean -fd 删除 |
| 恢复修改的文件 | git restore 文件名 |
| 删除分支 | git branch -D 分支名 # 强制删除未合并分支-D |
| 远程分支覆盖本地 | git reset --hard origin/master (覆盖修改的文件) |
| 提交暂存区 | git add 文件名 (不建议用 git add .) |
| 移出暂存区,保持修改 | git reset HEAD (移出所有) git reset HEAD 文件名 |
| 查看提交状态 | git status |
| 查看代码区别 | git diff --cached git diff --no-index (比较两个未跟踪的文件) git diff branch1:a.sh -- b.sh (比较分支中的a和本地b) |
| 提交暂存代码 | git commit -m 'icafe-id icafe-name' |
| 删除本地和暂存区文件 | git rm 文件 |
| 多次commit | git commit --amend |
| 查看最近的commit | git log |
| 查看特定的 commit | git show <commit-hash> |
| 撤回上一次commit | git reset HEAD~1 (包括add) |
| 回退到合并前的状态 | git reset --hard ORIG_HEAD (慎用) |
| 提交至远程仓库 | git push origin HEAD:refs/for/分支名 |
| cr评审 | 如果代码评审没通过,再次修改时,不能使用git commit -m ,要使用 git add git commit --amend //合并本次与上次提交,加-m 卡号和注释,可以修改,但是是新起一个cr git push origin HEAD:refs/for/分支名 已合分支,合并master需要修改 拉分支,重新修改分支再提交 冲突解决 git fetch origin # 获取远程最新代码 git pull origin 当前分支 # 合并远程变更到本地 git status # 查看所有冲突文件(标记为"Unmerged paths") git checkout --ours 目录/ # 整个目录保留当前分支修改 git checkout --theirs 目录/ # 整个目录采用合并分支修改 其他push错误 https://cloud.baidu-int.com/icloud/iCode/Git-client-message/push_error/#too_many_commits |

相关推荐
Elastic 中国社区官方博客3 小时前
根据用户行为数据中的判断列表在 Elasticsearch 中训练 LTR 模型
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
点控云4 小时前
点控云智能短信:重构企业与用户的连接,让品牌沟通更高效
大数据·人工智能·科技·重构·外呼系统·呼叫中心
风清再凯6 小时前
04_es原理&filebeat使用
大数据·elasticsearch·搜索引擎
小小王app小程序开发6 小时前
盲盒小程序开发新视角:从用户体验到运营落地的分析拆解
大数据·ux
weixin_525936338 小时前
部分Spark SQL编程要点
大数据·python·sql·spark
wan5555cn9 小时前
当代社会情绪分类及其改善方向深度解析
大数据·人工智能·笔记·深度学习·算法·生活
222you10 小时前
Git的diff命令
git
板凳坐着晒太阳10 小时前
Flink 作业通用优化方案
大数据·flink
补三补四12 小时前
Git 基础操作指南
大数据·git·elasticsearch
Aubrey-J13 小时前
Linux中快速部署Elasticsearch(基础&TLS配置)
linux·服务器·elasticsearch