一、前期准备
- 安装并配置 Git(必做)
安装 Git:
Windows:下载 Git for Windows,一路默认安装即可(记得勾选 "Git Bash Here" 方便右键打开命令行)。
macOS:打开终端执行 brew install git(需先装 Homebrew),或直接下载安装包。
Linux:执行 sudo apt install git(Debian/Ubuntu)或 sudo yum install git(CentOS)。
验证安装:打开终端 / Git Bash,输入 git --version,能显示版本号即安装成功。
配置 Git 身份(必须和 GitHub 账号一致):
bash
运行
替换成你的GitHub用户名
git config --global user.name "你的GitHub用户名"
替换成你的GitHub绑定邮箱
git config --global user.email "你的GitHub邮箱@xxx.com"
- 在 GitHub 创建空仓库
登录 GitHub,点击右上角 "+" 号 → 选择 "New repository"。
填写仓库信息:
Repository name:仓库名(建议和本地项目名一致)。
Description(可选):仓库描述,比如 "我的第一个 Python 项目"。
Visibility:选择公开(Public)或私有(Private)。
不要勾选 "Add a README file"(避免和本地项目冲突)。
点击 "Create repository",此时会进入仓库空页面,复制页面上的仓库地址(HTTPS 或 SSH 都可以,新手推荐先选 HTTPS)。
二、本地推送项目到 GitHub(核心步骤)
打开 Git Bash(Windows)或终端(macOS/Linux),按以下步骤执行:
- 进入本地项目目录
bash
运行
替换成你的项目本地路径,比如 cd /Users/xxx/Desktop/my-project
cd 你的本地项目绝对路径
- 初始化 Git 仓库(首次上传必做)
bash
运行
git init
作用:在项目目录下创建.git 隐藏文件夹,标记该目录为 Git 可管理的仓库。
- 将项目文件添加到暂存区
bash
运行
添加所有文件(推荐)
git add .
若只想添加单个文件,比如 git add main.py
注意:如果有不想上传的文件(比如依赖包、日志),可以创建.gitignore文件,写入忽略规则(比如venv/、*.log)。
- 提交文件到本地仓库
bash
运行
替换备注信息,比如 "首次提交:完成项目基础功能"
git commit -m "你的提交备注"
作用:将暂存区的文件正式提交到本地 Git 仓库,备注信息用于记录本次提交的内容,方便后续追溯。
- 关联远程 GitHub 仓库
bash
运行
替换成你复制的仓库地址,比如 git remote add origin https://github.com/你的用户名/仓库名.git
git remote add origin 你的GitHub仓库地址
作用:将本地仓库和远程 GitHub 仓库建立关联,origin是远程仓库的默认别名。
- 推送代码到 GitHub
bash
运行
首次推送用这个命令(绑定默认分支)
git push -u origin main
后续推送可简化为 git push
注意:如果 GitHub 提示分支名是master而非main,则替换为 git push -u origin master。
身份验证:
若用 HTTPS 地址,会弹出窗口要求输入 GitHub 用户名和密码(2021 年后 GitHub 不再支持密码登录,需用 Personal Access Token 替代密码,生成方法见文末)。
若用 SSH 地址,需先配置 SSH 密钥(适合频繁推送的场景,文末附简易步骤)。
三、常见问题解决
- 推送失败:"fatal: remote origin already exists"
原因:本地已关联过其他远程仓库。
解决:先删除原有关联,再重新关联:
bash
运行
git remote rm origin
git remote add origin 你的GitHub仓库地址 - 推送失败:"failed to push some refs to..."
原因:远程仓库有默认文件(比如你误勾选了 README),和本地仓库冲突。
解决:先拉取远程文件并合并,再推送:
bash
运行
git pull --rebase origin main
git push -u origin main - 生成 Personal Access Token(HTTPS 登录用)
GitHub 主页 → 右上角头像 → Settings → Developer settings → Personal access tokens → Tokens (classic)。
点击 "Generate new token (classic)",填写备注、过期时间,勾选 "repo" 权限,点击生成。
复制生成的 Token(只显示一次),推送代码时,密码框输入这个 Token 即可。 - 配置 SSH 密钥(免密登录,推荐)
bash
运行
1. 生成SSH密钥(一路回车,无需设置密码)
ssh-keygen -t ed25519 -C "你的GitHub邮箱"
2. 复制公钥内容
Windows:cat ~/.ssh/id_ed25519.pub
macOS/Linux:pbcopy < ~/.ssh/id_ed25519.pub
3. GitHub主页 → Settings → SSH and GPG keys → New SSH key,粘贴公钥并保存。
总结
上传项目核心流程:GitHub 创建空仓库 → 本地初始化 Git → 提交文件 → 关联远程仓库 → 推送代码。
身份验证优先选 SSH(免密),HTTPS 需用 Personal Access Token 替代密码。
推送失败大概率是分支冲突或远程仓库已存在文件,用git pull --rebase合并即可。