4.2 KiB
4.2 KiB
Git 自动上传脚本使用指南
本目录提供了三个版本的 Git 自动上传脚本,适用于不同操作系统。
📋 脚本说明
1. git_push.sh - Linux/Mac Bash 脚本
适用于 Linux 和 MacOS 系统。
使用方法:
# 给脚本添加执行权限(首次使用)
chmod +x git_push.sh
# 基本使用(交互式输入提交信息)
./git_push.sh
# 直接指定提交信息
./git_push.sh "feat: 添加新功能"
2. git_push.bat - Windows 批处理脚本
适用于 Windows 系统。
使用方法:
# 基本使用(交互式输入提交信息)
git_push.bat
# 直接指定提交信息
git_push.bat "feat: 添加新功能"
3. git_push.py - Python 跨平台脚本(推荐)
适用于所有操作系统(Windows、Linux、Mac),需要 Python 3.6+。
使用方法:
# 基本使用(交互式输入提交信息)
python git_push.py
# 直接指定提交信息
python git_push.py "feat: 添加新功能"
# 多个单词的提交信息
python git_push.py "feat: 添加新功能和修复bug"
🚀 功能特性
所有脚本都包含以下功能:
- 自动检测 Git 仓库:检查当前目录是否为 Git 仓库
- 显示更改状态:显示将要提交的文件
- 交互式确认:在提交前确认操作
- 智能提交信息:
- 可以直接通过命令行参数指定
- 也可以交互式输入
- 默认提供带时间戳的提交信息
- 自动添加文件:自动添加所有更改的文件
- 错误处理:友好的错误提示和处理
- 颜色输出:支持彩色输出(Python 版本)
📝 使用示例
示例 1:基本使用
# Linux/Mac
./git_push.sh
# Windows
git_push.bat
# Python(跨平台)
python git_push.py
脚本会:
- 显示当前更改的文件
- 询问是否继续
- 请求输入提交信息(或使用默认)
- 自动添加、提交并推送
示例 2:指定提交信息
# Linux/Mac
./git_push.sh "fix: 修复用户注册bug"
# Windows
git_push.bat "fix: 修复用户注册bug"
# Python
python git_push.py "fix: 修复用户注册bug"
示例 3:提交多个文件的更改
# 脚本会自动检测所有更改的文件
./git_push.sh "feat: 添加Docker支持和优化内存配置"
⚙️ 配置说明
默认分支
脚本会自动检测当前分支并使用该分支进行推送。
远程仓库
确保已配置远程仓库:
# 查看远程仓库
git remote -v
# 如果未配置,添加远程仓库
git remote add origin <your-repo-url>
身份验证
如果推送时遇到身份验证问题:
-
HTTPS 方式:
- 需要输入用户名和密码(或访问令牌)
- 可以配置凭证助手避免每次输入:
git config --global credential.helper store
-
SSH 方式:
- 配置 SSH 密钥更安全
- 将远程 URL 改为 SSH 格式:
git remote set-url origin git@github.com:username/repo.git
🔧 故障排除
问题 1:权限不足(Linux/Mac)
# 解决方案:添加执行权限
chmod +x git_push.sh
问题 2:Python 脚本无法运行
# 检查 Python 版本
python --version # 需要 Python 3.6+
# 如果系统中有多个 Python 版本
python3 git_push.py
问题 3:推送失败(认证问题)
- 检查远程仓库地址是否正确
- 确认已配置 SSH 密钥或访问令牌
- 可以手动执行
git push origin <branch>测试
问题 4:没有需要提交的更改
- 脚本会检测是否有未提交的更改
- 如果没有更改,可以选择拉取远程更新
💡 建议
-
推荐使用 Python 版本(
git_push.py):- 跨平台兼容性最好
- 错误处理更完善
- 支持彩色输出
-
提交信息规范:
- 使用规范的提交信息格式,例如:
feat: 添加新功能fix: 修复bugdocs: 更新文档chore: 更新配置refactor: 代码重构
- 使用规范的提交信息格式,例如:
-
定期提交:
- 建议频繁提交小的更改
- 避免一次性提交大量更改