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

全新 Python 项目托管到 Gitee 私有仓库完整流程(带详细命令注释)

详细流程

#!/bin/bash# ======================
# 第一阶段:项目初始化
# ======================# 创建项目目录(my-project替换为你的项目名称)
mkdir my-project
# 进入项目目录
cd my-project# 创建基础项目结构(Python标准结构)
touch README.md                # 项目说明文档
touch requirements.txt         # Python依赖清单
touch setup.py                 # 打包安装配置文件
touch .gitignore               # Git忽略规则文件
touch .gitee-ci.yml            # Gitee CI配置文件# 创建源代码和测试目录
mkdir src                      # 源代码目录
mkdir tests                    # 测试代码目录
mkdir docs                     # 文档目录# 在src目录中创建主程序文件
touch src/__init__.py          # Python包标识文件
touch src/main.py              # 程序入口文件# 在tests目录中创建测试文件
touch tests/__init__.py        # 测试包标识
touch tests/test_main.py       # 主程序测试# ===========================
# 第二阶段:编写基础内容
# ===========================# 填充基础README内容(在真实环境中需编辑文件内容)
echo "# My Project" > README.md
echo "> 项目简要描述" >> README.md
echo "## 功能特性" >> README.md
echo "- 功能1" >> README.md
echo "- 功能2" >> README.md
echo "## 快速开始" >> README.md
echo "\`\`\`bash" >> README.md
echo "pip install -r requirements.txt" >> README.md
echo "python src/main.py" >> README.md
echo "\`\`\`" >> README.md# 创建Python专用.gitignore文件
cat > .gitignore << EOF
# Python
__pycache__/
*.pyc
*.pyo
*.pyd
.python-version# 虚拟环境
.venv/
venv/
env/# IDE配置
.vscode/
.idea/
*.code-workspace# 系统文件
.DS_Store
Thumbs.db# 构建产物
dist/
build/
*.egg-info/
EOF# ============================
# 第三阶段:初始化Git仓库
# ============================# 初始化当前目录为Git仓库
git init# 配置全局用户信息(已配置可跳过)
git config --global user.name "你的名字"
git config --global user.email "你的邮箱@example.com"# 将当前所有文件添加到暂存区
git add .# 提交初始版本
git commit -m "初始化项目结构"
# -m参数:添加提交信息# ================================
# 第四阶段:创建Gitee私有仓库
# ================================# 网页端操作(无法命令行直接创建私有仓库):
# 1. 访问 https://gitee.com
# 2. 登录后点击右上角 "+" -> "新建仓库"
# 3. 填写仓库信息:
#    - 仓库名称: my-project
#    - 路径: 按默认值
#    - 选择 "私有" 仓库
#    - 不勾选任何初始化选项(避免冲突)
#    - 启用分支模型(推荐master+develop)
# 4. 点击"创建仓库"# =================================
# 第五阶段:关联远程仓库并推送
# =================================# 添加远程仓库地址(替换your-username为你的Gitee用户名)
git remote add origin https://gitee.com/your-username/my-project.git
# remote add:添加远程仓库
# origin:远程仓库的默认名称# 创建并切换到develop分支(推荐的工作分支)
git checkout -b develop
# checkout -b:创建新分支并切换到该分支# 将当前目录下所有文件添加到暂存区
git add .# 推送本地代码到远程仓库(首次推送-u参数设置上游分支)
git push -u origin develop
# push:将本地提交推送到远程
# -u:设置上游分支,后续可直接使用git push
# origin develop:推送到origin远程的develop分支# =================================
# 第六阶段:创建保护分支
# =================================# 创建master分支(用于稳定版本)
git checkout -b master
git add .
git push origin master# 网页端设置(代码推送到Gitee后操作):
# 1. 进入仓库 -> "管理" -> "分支管理"
# 2. 点击"保护分支设置"
# 3. 为master分支设置:
#    ✔️ 分支保护
#    ✔️ 禁止强制推送
#    ✔️ 需Pull Request合并
#    ✔️ 需代码审核(设置最少审核人数1)
# 4. 同样保护develop分支(可不设审核人数)
# 5. 点击"保存"# =================================
# 第七阶段:配置开发工作流
# =================================# 切换到开发分支
git checkout develop# 创建一个功能分支(示例:用户认证模块)
git checkout -b feature/user-auth
# -b:创建并切换到新分支# [进行开发工作...]
# 修改src/main.py等文件# 添加开发完成的功能
git add src/main.py# 提交变更
git commit -m "添加用户认证模块"# 推送功能分支到远程
git push origin feature/user-auth# =================================
# 第八阶段:发起Pull Request
# =================================# 网页端操作:
# 1. 进入仓库 -> "Pull Requests" -> "新建"
# 2. 设置:
#    - 源分支: feature/user-auth
#    - 目标分支: develop
#    - 填写PR标题和描述
#    - 勾选"合并后删除源分支"
#    - 添加审核人(若有团队成员)
# 3. 点击"创建 Pull Request"# ================================
# 第九阶段:合并与部署
# ================================# 审核通过后维护者合并PR(网页端操作)
# 合并后自动删除feature分支# 更新本地develop分支
git checkout develop
git pull origin develop
# pull:拉取远程更新并合并到本地分支# ================================
# 可选:CI/CD配置
# ================================# 启用Gitee CI(网页端):
# 1. 进入仓库 -> "服务" -> "Gitee Go"
# 2. 点击"立即使用"# 配置.gitee-ci.yml(已在初始创建)
cat > .gitee-ci.yml << EOF
image: python:3.10stages:- testbefore_script:- python -m pip install --upgrade pip- pip install -r requirements.txtunit_test:stage: testscript:- python -m pytest tests/
EOF

关键步骤说明

  1. ​目录结构设计​​:

    • src/:存放所有源代码(符合Python包结构)
    • tests/:测试代码与主代码分离
    • docs/:独立文档目录(可用Sphinx生成)
    • requirements.txt:明确项目依赖
    • setup.py:支持打包分发
  2. ​Git工作流​​:

    # 标准开发流程
    git checkout develop              # 切换到开发主分支
    git pull                          # 拉取最新代码
    git checkout -b feature/xxx       # 创建功能分支
    # ... 开发工作 ...
    git add .                         # 添加更改
    git commit -m "feat: xxx"         # 提交功能
    git push origin feature/xxx       # 推送到远程
    # 创建Pull Request → 审核 → 合并

  3. 分支管理策略​​:

    • master:生产环境稳定版本(仅通过PR合并)
    • develop:开发主分支(功能合并目标)
    • feature/*:短期功能开发分支(合并后删除)
    • hotfix/*:紧急修复分支(从master创建)
  4. ​首次推送后必做​​:

    • 在Gitee仓库设置中启用分支保护
    • 配置团队协作权限(仓库管理 → 仓库成员)
    • 开启Gitee Go持续集成服务
    • 添加项目徽章(README展示构建状态)
  5. ​项目启动​

    # 创建虚拟环境
    python -m venv .venv
    # 激活(Linux/macOS)
    source .venv/bin/activate
    # 激活(Windows)
    .\.venv\Scripts\activate
    # 安装依赖
    pip install -r requirements.txt

http://www.lryc.cn/news/589427.html

相关文章:

  • 【PTA数据结构 | C语言版】构造二叉树
  • 软件质量概述
  • 使用 pdb 来 debug 调试 python 程序
  • I3C通信驱动开发注意事项
  • Linux715 磁盘管理:逻辑卷
  • golang二级缓存示例
  • 随机奖励能提升Qwen数学表现?本质是数据污染
  • NuGet01-安装及使用
  • Linux下编译海思WS63 SDK全攻略
  • 关于Linux下Cursor的使用
  • 如何设计实现开发自助重启工具-01-设计篇
  • 代码随想录八股文训练营总结
  • lesson14:Python的推导式
  • 2025-07-15 李沐深度学习6——Softmax回归
  • 项目:简单学生成绩管理系统设计
  • Nginx配置反向代理
  • 深入解析:磁盘级文件与内存级(被打开)文件的本质区别与联系
  • 脚手架新建Vue2/Vue3项目时,项目文件内容的区别
  • k8s环境使用Operator部署Seaweedfs集群(上)
  • 同济医院R语言训练营第三期开讲!上交大张维拓老师主讲
  • ubuntu22.04谷歌浏览器中文输入法bug
  • ASP .NET Core 8结合JWT轻松实现身份验证和授权
  • ESLint 配置错误:ReferenceError: prettier is not defined 解决方案
  • Vue 常用的 ESLint 规则集
  • 卫星通信链路预算之六:输出回退
  • web前端渡一大师课 01 事件循环
  • 网络基础协议综合实验
  • Spring MVC 执行流程详解:一次请求经历了什么?
  • Linux修改ssh默认端口,禁止root登录,禁止密码登录并同时开启公钥认证
  • session与cookie的区别