ubuntu下thinkphp项目如何进行版本控制
导读:Ubuntu下ThinkPHP项目的版本控制实操指南 一 环境准备与初始化 安装 Git:在 Ubuntu 上执行以下命令安装并验证版本 sudo apt update && sudo apt install -y git...
Ubuntu下ThinkPHP项目的版本控制实操指南
一 环境准备与初始化
- 安装 Git:在 Ubuntu 上执行以下命令安装并验证版本
sudo apt update & & sudo apt install -y git
git --version - 配置 Git 身份(全局生效):
git config --global user.name “Your Name”
git config --global user.email “you@example.com” - 进入 ThinkPHP 项目根目录(包含 thinkphp/、app/、config/ 等),初始化仓库:
git init - 关联远程仓库(GitHub/GitLab/Gitee 等),默认分支可能是 main 或 master:
git remote add origin < 你的仓库URL>
git branch -M main
git push -u origin main
以上步骤完成后,本地代码已纳入 Git 管理并与远程仓库建立追踪关系。
二 规范 ThinkPHP 的.gitignore
- 必须忽略的目录与文件(示例):
- 运行时与缓存:/runtime/(TP5/6 常见)
- 依赖包:/vendor/(只提交 composer.json 与 composer.lock)
- 用户上传:/public/uploads/(或 /runtime/upload/,按项目实际调整)
- 环境配置:/.env(提供 .env.example 模板)
- IDE/编辑器配置:/.idea/、/.vscode/
- 日志与调试:*.log、npm/yarn 调试日志等
- 建议的 .gitignore 片段:
/runtime/ /vendor/ /public/uploads/ .env .env.local .env.*.local .idea/ .vscode/ *.log npm-debug.log* yarn-error.log* .DS_Store Thumbs.db - 若之前误提交了 /vendor/ 或 /runtime/,可将其从版本控制中移除(保留本地文件):
git rm -r --cached vendor
git rm -r --cached runtime
git add .gitignore
git commit -m “chore: 移除 vendor 与 runtime 的版本控制”
git push
以上做法可避免将依赖、运行时与敏感配置纳入版本控制,同时提供模板保障团队环境一致性。
三 依赖管理与首次提交
- 确保提交依赖描述文件:
git add composer.json composer.lock
git commit -m “chore: 添加依赖描述文件” - 其他业务代码按需加入暂存区并提交:
git add .
git commit -m “feat: 初始化项目结构与路由” - 团队成员拉取代码后安装依赖:
composer install --optimize-autoloader --no-dev
说明:只提交 composer.json/composer.lock 而不提交 /vendor/,既减小仓库体积,又保证各环境依赖一致性。
四 分支策略与协作流程
- 分支策略建议:
- 轻量迭代:采用 GitHub Flow,从 main 创建 feature/ 分支,完成后以 Pull Request 合并,保持 main 可随时发布。
- 规范发布:采用 Git Flow,区分 develop、feature/、release/、hotfix/ 分支,适合多环境、多版本并行。
- 常用协作命令范式:
git checkout -b feature/user-login开发完成后
git push -u origin feature/user-login在 GitHub/GitLab 创建 PR,Code Review 通过后合并到 main
git checkout main & & git pull - 冲突处理:
git status 查看冲突文件 → 手动编辑解决 → git add < 文件> → git commit 完成合并。
以上流程有助于在团队中保持清晰的版本线与可回退性。
五 常用回退与撤销操作
- 安全撤销已推送的提交(生成新提交,保留历史):
git revert - 仅本地回退(危险,切勿用于已推送的公共分支):
git reset --hard - 恢复单个文件到某次提交:
git checkout – path/to/file - 查看提交历史与差异:
git log --oneline -10
git diff ^
以上命令覆盖日常回退、恢复与排查所需的关键场景。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu下thinkphp项目如何进行版本控制
本文地址: https://pptw.com/jishu/751134.html
