# Git提交指南 ## 项目现状 当前项目已经初始化了Git仓库,状态如下: - 当前分支:main - 远程仓库:origin (https://git.flowbb.top/humuyu/xdz-app.git) - 已暂存的修改:多个文件 - 未暂存的修改:base-core/README.md - 未跟踪的文件:3个(包含一些分析文档) ## 完整提交流程 ### 步骤1:添加文件到暂存区 首先,需要将所有修改的文件和未跟踪的文件添加到暂存区: ```bash # 添加未暂存的修改 $ git add base-core/README.md # 添加所有未跟踪的文件 $ git add "AppInitializer\344\275\215\347\275\256\345\210\206\346\236\220.md" $ git add app/src/main/java/com/narutohuo/xindazhou/auth/REFACTOR_EVALUATION.md $ git add base-common/src/main/java/com/narutohuo/xindazhou/common/network/SANDWICH_COMPARISON_CORRECTED.md $ git add "\346\236\266\346\236\204\345\210\206\346\236\220\346\212\245\345\221\212.md" # 或者使用通配符添加所有未跟踪和修改的文件(推荐) $ git add . ``` ### 步骤2:检查暂存状态 确认所有文件都已正确添加到暂存区: ```bash $ git status ``` ### 步骤3:提交代码 使用有意义的提交信息提交代码: ```bash # 基本提交 $ git commit -m "描述你的修改内容" # 详细提交(推荐)- 会打开编辑器让你输入更详细的提交信息 $ git commit ``` ### 步骤4:推送到远程仓库 将本地提交推送到远程仓库: ```bash # 推送到默认远程分支(main) $ git push # 或者明确指定远程和分支 $ git push origin main ``` ## 其他常用Git命令 ### 查看提交历史 ```bash $ git log # 查看简洁版历史 $ git log --oneline ``` ### 查看修改内容 ```bash # 查看未暂存的修改 $ git diff # 查看已暂存的修改 $ git diff --cached ``` ### 创建新分支 ```bash $ git checkout -b 分支名 ``` ### 切换分支 ```bash $ git checkout 分支名 ``` ### 合并分支 ```bash # 切换到目标分支 $ git checkout main # 合并其他分支 $ git merge 其他分支名 ``` ## 常见问题处理 ### 冲突解决 如果推送时遇到冲突,需要先拉取远程代码并解决冲突: ```bash # 拉取远程代码 $ git pull # 解决冲突后重新提交 $ git add . $ git commit $ git push ``` ### 撤销修改 ```bash # 撤销未暂存的修改 $ git restore 文件名 # 撤销已暂存的修改 $ git restore --staged 文件名 # 撤销最近的提交(但保留修改) $ git reset HEAD~1 ``` ## 提交规范 为了保持代码仓库的整洁,建议遵循以下提交规范: 1. **提交信息清晰**:使用简洁明了的语言描述修改内容 2. **一次提交一个功能**:避免将多个不相关的修改放在一次提交中 3. **提交前测试**:确保代码能够正常编译和运行 4. **添加必要的注释**:对于复杂的修改,在代码中添加注释说明 ## 示例提交流程 ```bash # 1. 检查状态 $ git status # 2. 添加所有修改 $ git add . # 3. 检查暂存状态 $ git status # 4. 提交代码 $ git commit -m "重构:将认证模块从base-common迁移到app模块" # 5. 推送到远程 $ git push ``` 如果按照以上步骤操作,你的代码应该能够成功提交到远程仓库。