[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"site-config":3,"article-git提交到gitee学习笔记":22,"comments-git提交到gitee学习笔记":40,"footer-socials":41},{"site_title":4,"site_subtitle":5,"home_intro":6,"avatar":7,"seo_keywords":8,"seo_description":9,"site_subtitle_highlight":10,"home_description":11,"about_name":12,"about_intro":13,"code_comment_2":14,"code_log":15,"code_skills":16,"code_goal":17,"code_comment_1":18,"meteor_density":19,"meteor_max_count":19,"meteor_enabled":20,"meteor_speed":21},"ShineGoldYao","架构代码，","全栈开发者 \u002F 开源爱好者 \u002F 技术探索者","https:\u002F\u002Fforuda.gitee.com\u002Favatar\u002F1762402862010015318\u002F16382196_yaoxingjin_1762402861.png!avatar200","ShiGoldYao,技术博客,全栈开发","专注于前沿技术分享与开源项目展示的个人技术博客","书写未来。","大家好，我是 ShiGoldYao。一名全栈学习与技术爱好者。在这里，我分享关于现代 Web 开发、技术框架学习记录以及极客生活的深度思考。","ShiGoldYao","我是一名全栈技术学习者，对构建高性能、可扩展的现代 Web 应用充满热情。过去一年里，我从初识互联网前后端开发，到逐步沉淀技术体系，始终保持着对前端、后端与工程化的持续探索。\n\n我坚信 “代码如诗”。除了日常学习与项目实践，我也会花大量时间关注开源社区，尝试摸索 WebAssembly、Rust 等前沿技术在浏览器端的更多可能，不断挑战性能与体验的边界。\n\n生活里的我并不只有代码：闲暇时会打打永劫无间，享受博弈与操作的快感；也喜欢打乒乓球，在运动中放松自己；当然，最幸福的时光，还是和女朋友一起慢慢生活、认真恋爱。","\u002F\u002F 🚀 开启学习之旅","","Vue , TypeScript , Nest , Mysql","成为优秀的前端全栈工程师","\u002F\u002F 欢迎来到我的技术世界","3","true","5",{"id":23,"title":24,"slug":25,"coverUrl":15,"summary":15,"content":26,"htmlContent":27,"categoryId":28,"viewCount":29,"likeCount":30,"isTop":31,"isPublish":30,"seoKeywords":15,"seoDescription":15,"publishTime":32,"createTime":33,"updateTime":34,"deleteTime":35,"category":36,"tags":39},"16","Git提交到Gitee学习笔记","git提交到gitee学习笔记","# Git提交到Gitee学习笔记\n\n## 一、准备工作\n\n### 1. 安装Git\n- 下载地址：https:\u002F\u002Fgit-scm.com\u002Fdownloads\n- 安装后验证：`git --version`\n\n### 2. 配置Git用户信息\n```bash\ngit config --global user.name \"你的用户名\"\ngit config --global user.email \"你的邮箱\"\n```\n\n### 3. 查看配置信息\n```bash\ngit config --global --list\n```\n\n## 二、Gitee仓库创建\n\n### 1. 登录Gitee\n- 访问：https:\u002F\u002Fgitee.com\n- 注册\u002F登录账号\n\n### 2. 创建新仓库\n- 点击右上角 \"+\" 按钮\n- 选择 \"新建仓库\"\n- 填写仓库名称（如：my-project）\n- 选择仓库类型（公开\u002F私有）\n- 初始化仓库（可选：添加README、.gitignore、开源许可证）\n- 点击 \"创建\"\n\n### 3. 获取仓库地址\n- 进入仓库页面\n- 点击 \"克隆\u002F下载\"\n- 复制HTTPS或SSH地址（推荐HTTPS）\n\n## 三、本地仓库操作\n\n### 1. 初始化本地仓库\n```bash\n# 进入项目目录\ncd your-project-folder\n\n# 初始化Git仓库\ngit init\n```\n\n### 2. 添加文件到暂存区\n```bash\n# 添加所有文件\ngit add .\n\n# 添加指定文件\ngit add filename.txt\n\n# 添加多个文件\ngit add file1.txt file2.txt\n```\n\n### 3. 提交到本地仓库\n```bash\n# 提交并添加说明\ngit commit -m \"第一次提交\"\n\n# 提交并添加详细说明\ngit commit -m \"feat: 添加新功能\"\n```\n\n## 四、连接Gitee远程仓库\n\n### 1. 添加远程仓库\n```bash\n# 添加远程仓库（origin是远程仓库的别名）\ngit remote add origin https:\u002F\u002Fgitee.com\u002F用户名\u002F仓库名.git\n\n# 例如：\ngit remote add origin https:\u002F\u002Fgitee.com\u002Fzhangsan\u002Fmy-project.git\n```\n\n### 2. 查看远程仓库\n```bash\n# 查看远程仓库列表\ngit remote -v\n```\n\n### 3. 修改远程仓库地址\n```bash\n# 修改远程仓库地址\ngit remote set-url origin https:\u002F\u002Fgitee.com\u002F用户名\u002F新仓库名.git\n```\n\n### 4. 删除远程仓库\n```bash\n# 删除远程仓库\ngit remote remove origin\n```\n\n## 五、推送到Gitee\n\n### 1. 首次推送（建立关联）\n```bash\n# 推送到main分支并建立关联\ngit push -u origin main\n\n# 如果是master分支\ngit push -u origin master\n```\n\n### 2. 后续推送\n```bash\n# 推送到当前分支\ngit push\n\n# 推送到指定分支\ngit push origin main\n\n# 强制推送（慎用）\ngit push -f origin main\n```\n\n## 六、从Gitee拉取更新\n\n### 1. 拉取最新代码\n```bash\n# 拉取并合并\ngit pull\n\n# 拉取指定分支\ngit pull origin main\n\n# 查看远程更新但不合并\ngit fetch\n```\n\n### 2. 克隆远程仓库\n```bash\n# 克隆整个仓库\ngit clone https:\u002F\u002Fgitee.com\u002F用户名\u002F仓库名.git\n\n# 克隆到指定目录\ngit clone https:\u002F\u002Fgitee.com\u002F用户名\u002F仓库名.git my-folder\n\n# 克隆指定分支\ngit clone -b 分支名 https:\u002F\u002Fgitee.com\u002F用户名\u002F仓库名.git\n```\n\n## 七、常用Git命令\n\n### 1. 查看状态\n```bash\n# 查看当前状态\ngit status\n\n# 查看提交历史\ngit log\n\n# 查看简洁的提交历史\ngit log --oneline\n\n# 查看分支\ngit branch\n\n# 查看所有分支（包括远程）\ngit branch -a\n```\n\n### 2. 分支操作\n```bash\n# 创建新分支\ngit branch feature-branch\n\n# 切换分支\ngit checkout feature-branch\n\n# 创建并切换分支\ngit checkout -b feature-branch\n\n# 合并分支\ngit merge feature-branch\n\n# 删除分支\ngit branch -d feature-branch\n\n# 删除远程分支\ngit push origin --delete feature-branch\n```\n\n### 3. 撤销操作\n```bash\n# 撤销工作区修改\ngit restore filename.txt\n\n# 撤销暂存区修改\ngit restore --staged filename.txt\n\n# 回退到上一个版本\ngit reset --hard HEAD~1\n\n# 回退到指定版本\ngit reset --hard commit-id\n```\n\n### 4. 查看差异\n```bash\n# 查看工作区与暂存区的差异\ngit diff\n\n# 查看暂存区与上一次提交的差异\ngit diff --cached\n\n# 查看两个版本的差异\ngit diff commit1 commit2\n```\n\n## 八、Gitee SSH配置（可选）\n\n### 1. 生成SSH密钥\n```bash\n# 生成SSH密钥\nssh-keygen -t rsa -C \"你的邮箱\"\n\n# 一路回车，使用默认设置\n```\n\n### 2. 查看公钥\n```bash\n# Windows\ncat ~\u002F.ssh\u002Fid_rsa.pub\n\n# 或直接打开文件\ntype %USERPROFILE%\\.ssh\\id_rsa.pub\n```\n\n### 3. 添加公钥到Gitee\n- 登录Gitee\n- 点击右上角头像 -> 设置\n- 选择 \"SSH公钥\"\n- 点击 \"添加公钥\"\n- 粘贴公钥内容\n- 点击 \"确定\"\n\n### 4. 测试SSH连接\n```bash\nssh -T git@gitee.com\n```\n\n### 5. 使用SSH地址\n```bash\n# 添加远程仓库（SSH方式）\ngit remote add origin git@gitee.com:用户名\u002F仓库名.git\n```\n\n## 九、常见问题解决\n\n### 1. 推送失败：远程仓库有更新\n```bash\n# 先拉取远程更新\ngit pull --rebase origin main\n\n# 再推送\ngit push origin main\n```\n\n### 2. 冲突解决\n```bash\n# 拉取时出现冲突\ngit pull origin main\n\n# 手动编辑冲突文件\n# 解决冲突后\n\ngit add .\ngit commit -m \"解决冲突\"\ngit push origin main\n```\n\n### 3. 忽略文件\n创建 `.gitignore` 文件：\n```\n# Node modules 依赖包\nnode_modules\u002F\n\n# 编译输出目录\ndist\u002F\nbuild\u002F\n\n# 本地环境配置文件\n.env\n.env.local\n.env.*.local\n\n# 日志文件\nnpm-debug.log*\nyarn-debug.log*\nyarn-error.log*\n\n# IDE 和编辑器相关文件\n.vscode\u002F\n.idea\u002F\n*.suo\n*.ntvs*\n*.njsproj\n*.sln\n\n# 操作系统文件\n.DS_Store\nThumbs.db\n\n# 测试覆盖率报告\ncoverage\u002F\n```\n\n### 4. 查看远程仓库信息\n```bash\n# 查看远程仓库详细信息\ngit remote show origin\n```\n\n## 十、常见使用场景详解\n\n### 场景一：将新文件用Git管理并提交到Gitee\n\n**适用情况**：你有一个本地项目或新文件，想要用Git管理并提交到Gitee远程仓库\n\n#### 步骤详解：\n\n```bash\n# 1. 进入你的项目目录\ncd your-project-folder\n\n# 2. 初始化Git仓库（如果还没有初始化）\ngit init\n\n# 3. 查看当前状态，确认哪些文件未被追踪\ngit status\n\n# 4. 添加文件到暂存区\n# 方式1：添加所有文件\ngit add .\n\n# 方式2：添加指定文件\ngit add filename.txt\n\n# 方式3：添加多个文件\ngit add file1.txt file2.txt file3.txt\n\n# 5. 再次查看状态，确认文件已添加到暂存区\ngit status\n\n# 6. 提交到本地仓库\ngit commit -m \"feat: 初始化项目，添加新文件\"\n\n# 7. 连接Gitee远程仓库（如果还没有连接）\ngit remote add origin https:\u002F\u002Fgitee.com\u002F用户名\u002F仓库名.git\n\n# 8. 查看远程仓库连接\ngit remote -v\n\n# 9. 首次推送到Gitee（-u参数建立本地分支与远程分支的关联）\ngit push -u origin main\n\n# 如果遇到错误，可能是远程仓库已有内容，可以尝试：\n# git pull --rebase origin main\n# git push -u origin main\n```\n\n#### 完整示例（从零开始）：\n\n```bash\n# 假设你有一个新项目 my-project\ncd C:\\Users\\YourName\\Desktop\\my-project\n\n# 初始化Git\ngit init\n\n# 创建一些文件（示例）\necho \"console.log('Hello World')\" > app.js\necho \"# My Project\" > README.md\n\n# 添加所有文件\ngit add .\n\n# 提交\ngit commit -m \"feat: 初始化项目\"\n\n# 连接Gitee远程仓库\ngit remote add origin https:\u002F\u002Fgitee.com\u002Fzhangsan\u002Fmy-project.git\n\n# 推送到Gitee\ngit push -u origin main\n```\n\n#### 注意事项：\n\n- **首次推送时**：如果Gitee仓库已经存在（比如创建了README），需要先 `git pull` 再 `git push`\n- **分支名称**：新版本Git默认使用 `main` 分支，旧版本可能使用 `master`，用 `git branch` 查看\n- **忽略文件**：如果有不需要提交的文件，先创建 `.gitignore` 文件\n\n---\n\n### 场景二：已提交到Gitee，后续更新文件并同步\n\n**适用情况**：项目已经用Git管理并提交到Gitee，现在修改了文件需要同步更新\n\n#### 步骤详解：\n\n```bash\n# 1. 查看当前状态，了解哪些文件被修改\ngit status\n\n# 2. 查看具体修改内容\ngit diff\n\n# 3. 添加修改的文件到暂存区\n# 方式1：添加所有修改的文件\ngit add .\n\n# 方式2：添加指定修改的文件\ngit add modified-file.js\n\n# 方式3：交互式添加（可以选择性地添加某些修改）\ngit add -i\n\n# 4. 查看状态，确认文件已添加到暂存区\ngit status\n\n# 5. 提交修改到本地仓库\ngit commit -m \"feat: 更新功能描述\"\n\n# 或者使用更详细的提交信息\ngit commit -m \"fix: 修复登录页面的bug\n- 修复了用户名验证逻辑\n- 优化了错误提示信息\"\n\n# 6. 推送到Gitee远程仓库\ngit push\n\n# 或者指定分支推送\ngit push origin main\n```\n\n#### 完整示例（日常更新流程）：\n\n```bash\n# 1. 进入项目目录\ncd C:\\Users\\YourName\\Desktop\\my-project\n\n# 2. 先拉取远程最新代码（多人协作时很重要）\ngit pull origin main\n\n# 3. 修改文件（使用编辑器修改代码）\n# ... 编辑文件 ...\n\n# 4. 查看修改内容\ngit status\ngit diff\n\n# 5. 添加修改的文件\ngit add .\n\n# 6. 提交修改\ngit commit -m \"feat: 添加用户注册功能\"\n\n# 7. 推送到Gitee\ngit push origin main\n```\n\n#### 常见更新场景：\n\n##### 场景A：修改单个文件\n```bash\n# 修改了 app.js 文件\ngit add app.js\ngit commit -m \"fix: 修复app.js中的bug\"\ngit push\n```\n\n##### 场景B：修改多个文件\n```bash\n# 修改了多个文件\ngit add .\ngit commit -m \"feat: 添加新功能模块\"\ngit push\n```\n\n##### 场景C：删除文件\n```bash\n# 删除了 old-file.js\ngit add old-file.js\ngit commit -m \"chore: 删除废弃文件\"\ngit push\n\n# 或者使用 git rm 命令\ngit rm old-file.js\ngit commit -m \"chore: 删除废弃文件\"\ngit push\n```\n\n##### 场景D：重命名或移动文件\n```bash\n# 重命名文件\ngit mv old-name.js new-name.js\ngit commit -m \"refactor: 重命名文件\"\ngit push\n```\n\n#### 注意事项：\n\n- **多人协作**：推送前先 `git pull` 拉取最新代码，避免冲突\n- **冲突处理**：如果 `git pull` 时出现冲突，手动解决冲突后再提交\n- **查看历史**：使用 `git log --oneline` 查看提交历史\n- **撤销修改**：如果修改错了，可以用 `git restore filename.txt` 撤销\n\n#### 快捷操作（一步完成添加和提交）：\n\n```bash\n# 添加所有修改并提交（不包括未追踪的新文件）\ngit commit -am \"feat: 快速提交修改\"\n\n# 注意：-a 参数只对已追踪的文件有效，新文件仍需先 git add\n```\n\n---\n\n## 十一、完整工作流程示例\n\n### 首次提交项目到Gitee\n```bash\n# 1. 初始化本地仓库\ngit init\n\n# 2. 添加所有文件\ngit add .\n\n# 3. 提交到本地仓库\ngit commit -m \"初始化项目\"\n\n# 4. 添加远程仓库\ngit remote add origin https:\u002F\u002Fgitee.com\u002F用户名\u002F仓库名.git\n\n# 5. 推送到Gitee\ngit push -u origin main\n```\n\n### 日常开发流程\n```bash\n# 1. 拉取最新代码\ngit pull origin main\n\n# 2. 创建新分支\ngit checkout -b feature\u002Fnew-feature\n\n# 3. 修改代码\n# ... 编辑文件 ...\n\n# 4. 查看状态\ngit status\n\n# 5. 添加修改的文件\ngit add .\n\n# 6. 提交修改\ngit commit -m \"feat: 添加新功能\"\n\n# 7. 切换回主分支\ngit checkout main\n\n# 8. 合并分支\ngit merge feature\u002Fnew-feature\n\n# 9. 推送到远程\ngit push origin main\n\n# 10. 删除本地分支\ngit branch -d feature\u002Fnew-feature\n```\n\n## 十二、提交信息规范\n\n### 提交信息格式\n```\n\u003Ctype>(\u003Cscope>): \u003Csubject>\n\n\u003Cbody>\n\n\u003Cfooter>\n```\n\n### 常用type类型\n- `feat`: 新功能\n- `fix`: 修复bug\n- `docs`: 文档更新\n- `style`: 代码格式调整\n- `refactor`: 重构代码\n- `test`: 测试相关\n- `chore`: 构建过程或辅助工具的变动\n\n### 示例\n```bash\ngit commit -m \"feat: 添加用户登录功能\"\ngit commit -m \"fix: 修复首页显示bug\"\ngit commit -m \"docs: 更新README文档\"\n```\n\n## 十三、学习资源\n\n- Gitee官方文档：https:\u002F\u002Fgitee.com\u002Fhelp\n- Git官方文档：https:\u002F\u002Fgit-scm.com\u002Fdoc\n- Git教程：https:\u002F\u002Fwww.liaoxuefeng.com\u002Fwiki\u002F896043488029600\n\n---\n\n**提示**：建议多练习这些命令，熟练掌握Git的基本操作对日常开发非常重要！\n",null,"7",112,1,0,"2026-04-07T16:50:22.022Z","2026-04-07T16:50:22.025Z","2026-05-25T22:05:44.056Z","0",{"id":28,"categoryName":37,"slug":37,"description":37,"sort":31,"isEnable":30,"createTime":38,"updateTime":38,"deleteTime":31},"工程化技术","2026-04-07T16:50:31.279Z",[],[],[]]