回归,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 |

相关推荐
武子康17 小时前
大数据-237 离线数仓 - Hive 广告业务实战:ODS→DWD 事件解析、广告明细与转化分析落地
大数据·后端·apache hive
大大大大晴天18 小时前
Flink生产问题排障-Kryo serializer scala extensions are not available
大数据·flink
Elasticsearch2 天前
如何使用 Agent Builder 排查 Kubernetes Pod 重启和 OOMKilled 事件
elasticsearch
vibecoding日记2 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
Elasticsearch3 天前
通用表达式语言 ( CEL ): CEL 输入如何改进 Elastic Agent 集成中的数据收集
elasticsearch
武子康3 天前
大数据-236 离线数仓 - 会员指标验证、DataX 导出与广告业务 ODS/DWD/ADS 全流程
大数据·后端·apache hive
程序员小崔日记3 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger4 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
武子康4 天前
大数据-235 离线数仓 - 实战:Flume+HDFS+Hive 搭建 ODS/DWD/DWS/ADS 会员分析链路
大数据·后端·apache hive