4.0 KiB
4.0 KiB
Git 提交和推送成功方法
项目配置信息
- 远程仓库地址:
http://lmhrt.cn:6771/ming/Rader_IQ.git - 主分支:
main - Git 路径:
C:\Program Files\Git\bin\git.exe
方法一:使用 git.bat 脚本(推荐)
脚本位置
git.bat 位于项目根目录
使用步骤
- 双击运行
git.bat - 查看步骤 1:检查 Git 状态
- 查看步骤 2:添加所有文件到暂存区
- 查看步骤 3:输入提交信息(默认:Update project)
- 查看步骤 4:自动拉取远程代码
- 查看步骤 5:推送到远程仓库
脚本流程
[1/5] 检查 Git 状态
[2/5] 添加所有文件到暂存区
[3/5] 提交更改
[4/5] 拉取远程代码
[5/5] 推送到远程仓库
方法二:手动执行 PowerShell 命令
完整流程
# 1. 查看当前状态
& "C:\Program Files\Git\bin\git.exe" status
# 2. 添加所有修改的文件
& "C:\Program Files\Git\bin\git.exe" add -A
# 3. 提交更改
& "C:\Program Files\Git\bin\git.exe" commit -m "你的提交信息"
# 4. 拉取远程代码(避免冲突)
& "C:\Program Files\Git\bin\git.exe" pull
# 5. 推送到远程仓库
& "C:\Program Files\Git\bin\git.exe" push
常见问题及解决方案
1. 推送失败,提示需要拉取
问题: 提示远程有新提交
# 解决方案:先拉取远程代码
& "C:\Program Files\Git\bin\git.exe" pull
# 解决冲突后再推送
& "C:\Program Files\Git\bin\git.exe" push
2. 认证失败
问题: Authentication failed for 'http://lmhrt.cn:6771/ming/Rader_IQ.git/'
解决方案:
# 方案1:配置凭据存储
& "C:\Program Files\Git\bin\git.exe" config --global credential.helper store
& "C:\Program Files\Git\bin\git.exe" push
# 方案2:在 URL 中包含认证信息
& "C:\Program Files\Git\bin\git.exe" remote set-url origin http://用户名:密码@lmhrt.cn:6771/ming/Rader_IQ.git
& "C:\Program Files\Git\bin\git.exe" push
3. 忘记添加 .gitignore
问题: 不应该被跟踪的文件被提交了
# 从暂存区移除已添加的文件
& "C:\Program Files\Git\bin\git.exe" rm -r --cached .pio
# 提交更改
& "C:\Program Files\Git\bin\git.exe" commit -m "Remove .pio from tracking"
& "C:\Program Files\Git\bin\git.exe" push
4. 修改最后一次提交信息
问题: 提交信息写错了,但还没有推送
# 修改最后一次提交(未推送)
& "C:\Program Files\Git\bin\git.exe" commit --amend -m "新的提交信息"
5. 查看文件历史
# 查看指定文件的历史
& "C:\Program Files\Git\bin\git.exe" log --follow 文件名
# 查看指定文件在某次提交的内容
& "C:\Program Files\Git\bin\git.exe" show 提交哈希:文件名
提交信息规范
格式建议
<类型>: <简短描述>
<详细描述(可选)>
<相关 issue(可选)>
类型说明
feat: 新功能fix: 修复 bugdocs: 文档更新style: 代码格式调整refactor: 重构代码test: 测试相关chore: 构建/工具链相关
示例
feat: 添加心率平滑处理算法
实现了基于移动平均的心率数据平滑处理,
提高了心率监测的稳定性。
成功案例
本次成功提交
- 提交哈希:
aa57e81 - 提交信息:
Update project - 修改文件: 4 个文件
- 新增行数: 134 行
- 删除行数: 88 行
- 推送状态: ✅ 成功
修改的文件
src/main.cpp- 修改src/radar_vitals.cpp- 修改src/radar_vitals.h- 修改git.bat- 新增
最佳实践
- 提交前检查: 使用
git status确认要提交的文件 - 频繁提交: 小步快跑,每个功能点完成后立即提交
- 清晰的提交信息: 使用规范的提交信息格式
- 推送前拉取: 使用
git pull避免冲突 - 定期同步: 与团队成员保持代码同步