使用github进行个人项目开发流程

一、现有流程详解

  注意:以下步骤都是在git bash中进行的。

  1. 初始化本地仓库
git init

▸ 作用:在当前目录创建新的Git版本库,生成.git隐藏文件夹

  1. 创建并切换develop分支
git checkout -b develop

▸ 作用:创建开发分支并立即切换到该分支

  1. 功能开发阶段
vim app.py  # 编写示例代码文件

▸ 作用:进行新功能开发或代码修改

  1. 暂存所有变更
git add .  # 推荐使用点号代替星号

▸ 作用:将工作区所有修改添加到暂存区

  1. 提交代码到本地仓库
git commit -m "增加了一个功能"

▸ 作用:将暂存区内容提交到本地版本库

  1. 切换回主分支
git checkout master

▸ 作用:返回稳定分支准备集成新功能

  1. 合并开发分支
git merge develop  # 图示误写为devil应修正为develop

▸ 作用:将develop分支的修改合并到master分支


二、完善后的完整流程(补充关键步骤)

  1. 解决合并冲突(如有)​
# 当出现冲突时:
git status                  # 查看冲突文件
vim <冲突文件>               # 手动解决冲突
git add <解决后的文件>       # 标记为已解决
git commit -m "解决合并冲突" # 完成冲突处理
  1. 推送到远程仓库
git remote add origin https://github.com/user/repo.git  # 首次关联远程仓库
git push -u origin master     # 推送主分支
git push origin develop       # 推送开发分支

▸ 作用:备份代码并与远程仓库同步

  1. 版本标签管理
git tag -a v1.0 -m "正式版本1.0"  # 创建标签
git push origin --tags          # 推送标签到远程

▸ 作用:标记重要版本节点

  1. 后续开发流程
git checkout develop     # 返回开发分支
git merge master         # 同步主分支更新
# 继续新功能开发...

三、流程图解

[本地仓库]
初始化 -> 开发分支 -> 编码 -> 提交 -> 合并到主分支
      ↖_______________解决冲突______________↙

[远程仓库]
推送主分支 -> 打标签 -> 版本发布

四、最佳实践建议

  1. 分支策略优化
# 推荐使用更安全的三分支模型:
git checkout -b feature/new-login  # 功能分支
git checkout -b hotfix/urgent      # 热修复分支
  1. 提交规范
git commit -m "feat: 新增用户登录功能"
git commit -m "fix: 修复支付接口报错"
git commit -m "docs: 更新API文档"
  1. 撤销操作
git reset --soft HEAD~1   # 撤销提交但保留修改
git checkout -- <file>    # 放弃单个文件修改
git merge --abort         # 中止合并
  1. 差异比较
git diff                  # 工作区与暂存区差异
git diff --staged         # 暂存区与仓库差异
git log --graph --oneline # 图形化提交历史

五、完整开发周期示例

  1. 初始化仓库并关联远程
  2. 创建功能分支开发
  3. 提交到本地开发分支
  4. 合并到主分支并测试
  5. 推送代码到远程仓库
  6. 定期执行git fetch同步远程变更
  7. 使用git rebase保持提交历史整洁

建议配置.gitignore文件过滤不需要版本控制的文件,定期执行git gc优化仓库性能,同时建议安装Git图形化工具(如SourceTree)辅助代码审查。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值