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

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

http://www.dtcms.com/a/138232.html

相关文章:

  • ONLYOFFICE深度解锁系列.2-Excel 跨文件数据整合实战指南-可道云的另一个严重bug
  • Vscode --- LinuxPrereqs │远程主机可能不符合 glibc 和 libstdc++ Vs code 服务器的先决条件
  • STM32 串口中断接收方式笔记:HAL_UART_Receive_IT vs __HAL_UART_ENABLE_IT
  • 用GitHub Actions实现CI/CD
  • 【uniapp】uni.setClipboardData 方法失效 bug 解决方案
  • 阿里云OSS应对DDoS攻击策略
  • TDengine 存储引擎剖析:数据文件与索引设计(二)
  • 告别昂贵语音合成服务!用GPT-SoVITS生成你的个性化AI语音
  • 【eNSP实验】OSPF单区域配置
  • 高效培训,借助课程编辑器塑造卓越团队​
  • BH1750光照传感器---附代码
  • 2025年4月16日华为笔试第二题200分
  • js逆向分享
  • NAT、代理服务、内网穿透
  • AI 推理与训练优化的核心理论体系建构及关键技术分析框架
  • Leetcode - 周赛445
  • ServletRequestAttributeListener 的用法笔记250417
  • usb重定向qemu前端处理
  • Java排序算法百科全书:原理、实现与实战指南
  • 如何新建一个空分支(不继承 master 或任何提交)
  • SQL刷题记录贴
  • Nodemon vs. PM2:开发与生产环境的 Node.js 部署最佳实践
  • 【AI插件开发】Notepad++ AI插件开发实践:实现对话窗口功能
  • 多 Agent 协作怎么整:从谷歌A2A到多Agent交互方案实现
  • 【hive】Hive对数据库,对表的操作(一)
  • 第六节:React Hooks进阶篇-自定义Hook设计
  • 大模型时代下全场景数据消费平台的智能BI—Quick BI深度解析
  • 【数字图像处理】图像增强
  • King3399(ubuntu文件系统)GDB/GDBServer调试配置
  • 《Cangjie Magic实战手记:用Agent DSL与MCP协议重构智能物流调度系统》——一次从技术困惑到行业落地的探索之旅