Linux2025年12月23日by admin👁️ 37
GitHub 上传项目完整教程
使用 Git Bash 将本地项目上传到 GitHub 的完整指南。
前置准备
1. 安装 Git
下载地址:https://git-scm.com/downloads
安装时保持默认选项即可,安装完成后右键菜单会出现 "Git Bash Here"。
2. 配置用户信息
首次使用必须配置,打开 Git Bash:
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱@example.com"
3. 配置 SSH 密钥(推荐)
SSH 方式无需每次输入密码:
# 生成密钥
ssh-keygen -t ed25519 -C "你的邮箱@example.com"
# 一路回车使用默认配置
# 查看公钥
cat ~/.ssh/id_ed25519.pub
将输出的公钥内容添加到 GitHub:
- 登录 GitHub → Settings → SSH and GPG keys
- 点击 "New SSH key"
- 粘贴公钥内容并保存
验证连接:
ssh -T git@github.com
# 出现 "Hi xxx! You've successfully authenticated" 表示成功
上传新项目
方式一:先创建远程仓库(推荐)
步骤 1:在 GitHub 创建仓库
- 登录 GitHub,点击右上角 "+" → "New repository"
- 填写仓库名称(如
my-project) - 选择 Public 或 Private
- 不要勾选 "Add a README file"(保持空仓库)
- 点击 "Create repository"
步骤 2:本地初始化并推送
# 进入项目目录
cd /d/projects/my-project
# 初始化 Git 仓库
git init
# 添加所有文件到暂存区
git add .
# 提交
git commit -m "first commit"
# 设置主分支名称
git branch -M main
# 添加远程仓库(SSH 方式)
git remote add origin git@github.com:你的用户名/my-project.git
# 推送到 GitHub
git push -u origin main
HTTPS 方式(需要输入密码或 Token):
git remote add origin https://github.com/你的用户名/my-project.git
方式二:克隆后添加文件
# 克隆空仓库
git clone git@github.com:你的用户名/my-project.git
# 进入目录
cd my-project
# 复制项目文件到此目录,然后
git add .
git commit -m "first commit"
git push
上传已有项目到新仓库
如果项目已经是 Git 仓库,只需关联远程:
cd /d/projects/existing-project
# 查看是否已有远程
git remote -v
# 添加新远程(如果没有)
git remote add origin git@github.com:你的用户名/repo-name.git
# 或修改已有远程地址
git remote set-url origin git@github.com:你的用户名/repo-name.git
# 推送
git push -u origin main
日常更新流程
项目上传后,日常修改的提交流程:
# 查看修改状态
git status
# 添加修改的文件
git add . # 添加所有
git add filename.txt # 添加指定文件
# 提交
git commit -m "描述本次修改"
# 推送到 GitHub
git push
.gitignore 配置
创建 .gitignore 文件,排除不需要上传的文件:
# 依赖目录
node_modules/
vendor/
# 构建输出
dist/
build/
# 环境配置
.env
.env.local
# IDE 配置
.idea/
.vscode/
*.swp
# 系统文件
.DS_Store
Thumbs.db
# 日志
*.log
logs/
# 临时文件
*.tmp
*.temp
常见问题
推送被拒绝
# 远程有新提交,先拉取再推送
git pull origin main
git push
大文件推送失败
GitHub 限制单文件 100MB,大文件使用 Git LFS:
# 安装 Git LFS
git lfs install
# 追踪大文件类型
git lfs track "*.psd"
git lfs track "*.zip"
# 确保 .gitattributes 被提交
git add .gitattributes
修改远程仓库地址
# 查看当前远程
git remote -v
# 修改地址
git remote set-url origin 新地址
撤销最后一次提交
# 保留修改,撤销提交
git reset --soft HEAD~1
# 完全撤销(慎用)
git reset --hard HEAD~1
Token 认证(HTTPS 方式)
GitHub 已不支持密码认证,需使用 Personal Access Token:
- GitHub → Settings → Developer settings → Personal access tokens
- Generate new token → 勾选 repo 权限
- 复制 Token,推送时作为密码使用
缓存 Token 避免重复输入:
git config --global credential.helper store
完整示例
从零开始上传一个 Node.js 项目:
# 1. 进入项目
cd /d/projects/my-node-app
# 2. 初始化
git init
# 3. 创建 .gitignore
echo "node_modules/" > .gitignore
echo ".env" >> .gitignore
# 4. 添加所有文件
git add .
# 5. 首次提交
git commit -m "Initial commit"
# 6. 关联 GitHub 仓库
git remote add origin git@github.com:username/my-node-app.git
# 7. 推送
git push -u origin main
# 完成!刷新 GitHub 页面查看
总结
核心命令记忆:
| 操作 | 命令 |
|---|---|
| 初始化 | git init |
| 添加文件 | git add . |
| 提交 | git commit -m "message" |
| 关联远程 | git remote add origin <url> |
| 推送 | git push -u origin main |
| 日常推送 | git push |
SSH 方式更方便,配置一次后无需重复认证。