如何上传代码到github仓库

一、前期准备

  1. 安装并配置 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"

  1. 在 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),按以下步骤执行:

  1. 进入本地项目目录
    bash
    运行

替换成你的项目本地路径,比如 cd /Users/xxx/Desktop/my-project

cd 你的本地项目绝对路径

  1. 初始化 Git 仓库(首次上传必做)

bash

运行

git init

作用:在项目目录下创建.git 隐藏文件夹,标记该目录为 Git 可管理的仓库。

  1. 将项目文件添加到暂存区

bash

运行

添加所有文件(推荐)

git add .

若只想添加单个文件,比如 git add main.py

注意:如果有不想上传的文件(比如依赖包、日志),可以创建.gitignore文件,写入忽略规则(比如venv/、*.log)。

  1. 提交文件到本地仓库

bash

运行

替换备注信息,比如 "首次提交:完成项目基础功能"

git commit -m "你的提交备注"

作用:将暂存区的文件正式提交到本地 Git 仓库,备注信息用于记录本次提交的内容,方便后续追溯。

  1. 关联远程 GitHub 仓库

bash

运行

替换成你复制的仓库地址,比如 git remote add origin https://github.com/你的用户名/仓库名.git

git remote add origin 你的GitHub仓库地址

作用:将本地仓库和远程 GitHub 仓库建立关联,origin是远程仓库的默认别名。

  1. 推送代码到 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 密钥(适合频繁推送的场景,文末附简易步骤)。

三、常见问题解决

  1. 推送失败:"fatal: remote origin already exists"
    原因:本地已关联过其他远程仓库。
    解决:先删除原有关联,再重新关联:
    bash
    运行
    git remote rm origin
    git remote add origin 你的GitHub仓库地址
  2. 推送失败:"failed to push some refs to..."
    原因:远程仓库有默认文件(比如你误勾选了 README),和本地仓库冲突。
    解决:先拉取远程文件并合并,再推送:
    bash
    运行
    git pull --rebase origin main
    git push -u origin main
  3. 生成 Personal Access Token(HTTPS 登录用)
    GitHub 主页 → 右上角头像 → Settings → Developer settings → Personal access tokens → Tokens (classic)。
    点击 "Generate new token (classic)",填写备注、过期时间,勾选 "repo" 权限,点击生成。
    复制生成的 Token(只显示一次),推送代码时,密码框输入这个 Token 即可。
  4. 配置 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合并即可。

相关推荐
mCell4 小时前
如何零成本搭建个人站点
前端·程序员·github
我怎么又饿了呀11 小时前
如何上传本地文件到github仓库中入门教学
github
Jingzhou11 小时前
基于 AKShare 金融数据做了一个轻量级的金融研究 Agent
后端·github
淘矿人13 小时前
[特殊字符] 别再手动写提示词了!Claude Skills 10分钟入门,效率暴涨200%,Token狂省78%
人工智能·vscode·python·pycharm·github·文心一言·ai编程
逛逛GitHub15 小时前
GitHub 上狂揽 1.3 万 Star!港大开源的轻量版 Clawdbot。
github
云雾J视界16 小时前
当Agent接管代码后:产品经理的终极价值,是定义AI无法感知的“恐惧”与“爽点”
github·openai·copilot·ai产品经理·碳基情绪·硅基概率
WebInfra18 小时前
模块联邦 2.0 稳定版发布:兼顾开发效率与极致性能
前端·javascript·github
HelloGitHub21 小时前
我装了个插件,让两个 OpenClaw 开始 24/7 搞事情了
开源·github
Light6021 小时前
GitHub Copilot提示词终极攻略:从“能用”到“精通”的AI编程艺术
github·copilot·ai编程·代码生成·提示词工程·开发效率·人机协作