欢迎光临
我们一直在努力

VS Code 将本地代码上传到 GitHub 的完整方法

在日常开发中,我们通常会使用 Git 管理代码版本,并将代码上传到 GitHub 进行备份、协作和版本追踪。

本文介绍如何在 VS Code 中将本地项目上传到 GitHub,同时说明代码更新后如何再次提交,以及常见错误的解决方法。


一、准备工作

开始之前,需要准备以下环境:

  • 安装 Git;
  • 安装 VS Code;
  • 注册 GitHub 账号;
  • 在 GitHub 上创建一个远程仓库。
  • 可以在终端执行以下命令,检查 Git 是否已经安装:

    git –version

    如果能够看到类似下面的输出,说明 Git 已经安装成功:

    git version 2.34.1

    Ubuntu 系统可以使用以下命令安装 Git:

    sudo apt update
    sudo apt install git

    安装完成后,重新打开 VS Code。


    二、在 GitHub 创建远程仓库

    登录 GitHub,点击右上角的加号,选择:

    New repository

    填写仓库名称,例如:

    construction-safety-agent

    如果本地已经存在完整项目,第一次创建远程仓库时,建议不要勾选以下选项:

    • Add a README file
    • Add .gitignore
    • Choose a license

    否则,远程仓库会提前产生提交记录,第一次上传时可能需要额外处理代码合并问题。

    创建完成后,GitHub 会生成远程仓库地址,例如:

    https://github.com/你的用户名/仓库名.git

    复制该地址,后面需要使用。


    三、在 VS Code 中打开本地项目

    启动 VS Code,选择:

    文件 → 打开文件夹

    选择需要上传的项目根目录。

    然后打开 VS Code 内置终端:

    终端 → 新建终端

    也可以使用快捷键:

    Ctrl + `

    查看当前路径:

    pwd

    查看当前目录中的文件:

    ls

    需要确保当前终端位于项目根目录,而不是项目的某个子目录。


    四、配置 Git 用户信息

    第一次使用 Git 时,需要配置用户名和邮箱。

    执行以下命令:

    git config –global user.name "你的用户名"
    git config –global user.email "你的邮箱"

    查看配置结果:

    git config –global –list

    这里的用户名和邮箱会记录在 Git 提交信息中。


    五、初始化本地 Git 仓库

    进入项目根目录后,执行:

    git init

    该命令会在当前项目中创建一个隐藏的 .git 目录,用于保存版本记录。

    可以使用以下命令检查当前状态:

    git status

    如果项目已经初始化过 Git,执行 git init 不会删除原来的代码和提交记录。


    六、配置 .gitignore

    上传代码前,建议先创建 .gitignore 文件,排除不需要上传的文件。

    对于 Python、目标检测、大模型、RAG 和 Agent 项目,可以使用下面的配置:

    # Python 缓存
    __pycache__/
    *.pyc
    *.pyo
    *.pyd

    # Python 虚拟环境
    venv/
    .venv/
    env/

    # Conda 环境
    .conda/

    # VS Code 配置
    .vscode/

    # 环境变量和密钥
    .env
    *.env

    # 日志文件
    *.log
    logs/

    # 缓存目录
    .cache/
    .pytest_cache/

    # 模型权重
    *.gguf
    *.bin
    *.pt
    *.pth
    *.onnx
    *.safetensors

    # 数据集
    data/
    dataset/
    datasets/

    # 系统文件
    .DS_Store
    Thumbs.db

    需要特别注意,不要将以下敏感信息上传到公开仓库:

    • API Key;
    • 数据库密码;
    • SSH 私钥;
    • 服务器账号密码;
    • Token;
    • .env 文件中的真实配置。

    可以创建一个 .env.example 文件,只保留配置名称:

    RAG_API_KEY=your_api_key
    VISION_BASE_URL=http://127.0.0.1:8081/v1
    SAFETY_RAG_URL=http://127.0.0.1:8000

    这样其他人可以了解项目需要哪些环境变量,又不会泄露真实密钥。


    七、第一次提交本地代码

    查看项目文件状态:

    git status

    将所有文件加入暂存区:

    git add .

    再次查看状态:

    git status

    创建第一次提交:

    git commit -m "初始项目代码"

    其中,-m 后面的内容是本次提交说明。

    提交说明应尽量写清楚本次修改内容,例如:

    git commit -m "修复 RAG 服务连接问题"


    八、关联 GitHub 远程仓库

    将本地项目与 GitHub 仓库关联:

    git remote add origin https://github.com/你的用户名/仓库名.git

    查看远程仓库地址:

    git remote -v

    正常情况下会看到:

    origin https://github.com/你的用户名/仓库名.git (fetch)
    origin https://github.com/你的用户名/仓库名.git (push)

    如果提示:

    remote origin already exists

    说明当前项目已经配置过名为 origin 的远程仓库。

    可以查看现有地址:

    git remote -v

    如果地址不正确,可以修改:

    git remote set-url origin https://github.com/你的用户名/仓库名.git


    九、将代码上传到 GitHub

    将当前分支名称修改为 main:

    git branch -M main

    第一次上传代码:

    git push -u origin main

    其中:

    • origin 是远程仓库名称;
    • main 是远程分支名称;
    • -u 会建立本地分支与远程分支之间的关联。

    第一次执行后,后续通常只需要运行:

    git push

    如果 GitHub 弹出浏览器登录页面,按照提示完成授权即可。

    上传完成后,刷新 GitHub 仓库页面,就可以看到本地代码。


    十、完整的首次上传命令

    首次上传代码时,可以按照下面的顺序执行:

    cd /你的项目路径

    git init

    git config –global user.name "你的用户名"
    git config –global user.email "你的邮箱"

    git add .
    git commit -m "初始项目代码"

    git branch -M main

    git remote add origin https://github.com/你的用户名/仓库名.git

    git push -u origin main

    需要注意,Git 用户名和邮箱只需要配置一次,不必每个项目都重新配置。


    十一、代码更新后如何再次上传

    本地代码修改后,不需要重新执行 git init,也不需要重新添加远程仓库。

    只需要执行以下命令:

    git status
    git add .
    git commit -m "说明本次修改内容"
    git push

    这会在原有代码基础上增加一条新的提交记录,而不是清空之前的代码。

    GitHub 仓库页面默认显示最新版本,但之前的版本仍然保存在提交历史中。

    查看提交记录:

    git log –oneline

    输出示例:

    a2b35cd 增加图像质量预检功能
    712cc8a 增加目标检测接口
    05fd882 初始化项目代码

    因此,正常的 git push 不会删除之前的提交记录。


    十二、只提交指定文件

    git add . 会添加当前目录下所有发生变化的文件。

    如果只想上传某个文件,可以指定文件路径:

    git add app.py
    git commit -m "更新 app.py"
    git push

    同时提交多个文件:

    git add app.py config.yaml README.md
    git commit -m "更新接口、配置和使用说明"
    git push

    也可以提交某个目录:

    git add src/
    git commit -m "更新 src 目录中的代码"
    git push

    提交前建议执行:

    git status

    确认没有把模型、数据集、日志或密钥文件加入提交。


    十三、远程仓库有更新时的正确操作

    如果仓库可能被其他人修改过,或者自己在另一台电脑上提交过代码,建议上传前先拉取远程更新:

    git pull –rebase origin main

    然后再提交本地修改:

    git status
    git add .
    git commit -m "更新代码"
    git push origin main

    一种更安全的日常操作顺序是:

    git status
    git add .
    git commit -m "说明本次修改"
    git pull –rebase origin main
    git push origin main

    这里使用 –rebase,可以尽量保持提交历史整洁,避免产生不必要的合并提交。

    如果本地还没有任何提交,不能直接执行部分 rebase 操作,应先完成本地提交。


    十四、使用 VS Code 图形界面提交代码

    除了终端命令,也可以使用 VS Code 左侧的“源代码管理”功能。

    操作步骤如下:

  • 点击 VS Code 左侧的“源代码管理”图标;
  • 如果项目还没有初始化,点击“初始化仓库”;
  • 修改代码并保存;
  • 在“更改”列表中查看修改的文件;
  • 点击文件右侧的 +,将文件加入暂存区;
  • 在提交消息输入框中填写说明;
  • 点击“提交”;
  • 点击“同步更改”或“推送”。
  • 如果是第一次将项目上传到 GitHub,仍然建议先使用终端完成远程仓库关联:

    git remote add origin https://github.com/你的用户名/仓库名.git
    git branch -M main
    git push -u origin main

    完成第一次关联后,后续可以直接使用 VS Code 图形界面提交和推送。


    十五、常见问题及解决方法

    1. 提示 git: command not found

    错误信息:

    git: command not found

    说明系统没有安装 Git。

    Ubuntu 安装命令:

    sudo apt update
    sudo apt install git

    安装完成后检查:

    git –version


    2. 提示 nothing to commit

    执行提交命令后出现:

    nothing to commit, working tree clean

    说明 Git 没有检测到新的修改。

    可以检查:

    git status

    常见原因包括:

    • 文件修改后没有保存;
    • 修改内容与原文件相同;
    • 文件被 .gitignore 忽略;
    • 当前终端不在正确的项目目录中。

    先在 VS Code 中按下:

    Ctrl + S

    保存文件,再执行:

    git status


    3. 提示远程仓库已存在

    错误信息:

    remote origin already exists

    先查看远程地址:

    git remote -v

    如果远程地址错误,执行:

    git remote set-url origin https://github.com/你的用户名/仓库名.git

    如果需要删除后重新添加:

    git remote remove origin
    git remote add origin https://github.com/你的用户名/仓库名.git


    4. 推送时提示 rejected

    错误信息可能类似:

    Updates were rejected because the remote contains work

    说明远程仓库中存在本地没有的提交。

    先拉取远程内容:

    git pull –rebase origin main

    然后重新推送:

    git push origin main

    如果远程仓库和本地仓库分别独立创建了提交,例如远程仓库中已经有 README,可以执行:

    git pull origin main –allow-unrelated-histories

    处理冲突并提交后,再执行:

    git push origin main


    5. 出现代码冲突

    当本地和远程修改了同一个文件的相同位置时,可能会出现冲突。

    冲突文件中通常会看到:

    <<<<<<< HEAD
    本地代码
    =======
    远程代码
    >>>>>>> main

    需要手动决定保留哪些内容,并删除以下冲突标记:

    <<<<<<< HEAD
    =======
    >>>>>>> main

    修改完成后执行:

    git add .
    git rebase –continue

    最后推送:

    git push origin main

    如果不想继续当前 rebase,可以取消:

    git rebase –abort


    6. GitHub 密码认证失败

    GitHub 的 HTTPS 推送通常不能直接使用账号密码。

    可以使用以下方式认证:

    • VS Code 浏览器登录授权;
    • Personal Access Token;
    • SSH 密钥。

    对于普通开发者,使用 VS Code 弹出的浏览器授权最方便。


    7. 文件过大无法上传

    模型权重、数据集和压缩包通常体积较大,不适合直接上传到普通 Git 仓库。

    常见的大文件包括:

    model.gguf
    weights.pt
    model.safetensors
    dataset.zip

    建议将其加入 .gitignore:

    *.gguf
    *.pt
    *.pth
    *.safetensors
    *.zip

    models/
    weights/
    dataset/
    datasets/

    如果确实需要管理大文件,可以使用 Git LFS:

    git lfs install
    git lfs track "*.gguf"
    git lfs track "*.pt"
    git lfs track "*.safetensors"

    然后提交 .gitattributes:

    git add .gitattributes
    git commit -m "配置 Git LFS"
    git push

    对于深度学习项目,更推荐只在 GitHub 中保存:

    • 源代码;
    • 配置文件;
    • 环境依赖文件;
    • README;
    • 小型示例数据;
    • 模型下载地址;
    • 数据集获取方式。

    不要直接上传完整模型权重和完整训练数据集。


    十六、撤销错误操作

    1. 取消暂存文件

    如果执行了:

    git add .

    但发现添加了不应该提交的文件,可以取消暂存:

    git restore –staged 文件名

    取消所有暂存:

    git restore –staged .


    2. 撤销本地文件修改

    恢复某个文件到最近一次提交状态:

    git restore 文件名

    例如:

    git restore app.py

    该操作会丢弃尚未提交的修改,执行前需要确认修改内容不再需要。


    3. 修改最近一次提交说明

    如果提交信息写错,但还没有推送,可以执行:

    git commit –amend -m "新的提交说明"


    4. 查看历史版本

    查看简洁提交历史:

    git log –oneline

    查看某个提交的具体修改:

    git show 提交ID


    5. 恢复某个文件的历史版本

    将某个文件恢复到指定提交:

    git restore –source=提交ID 文件名

    恢复后,需要重新提交:

    git add app.py
    git commit -m "恢复 app.py 的历史版本"
    git push


    十七、推荐的日常 Git 工作流程

    个人项目更新代码时,可以使用以下流程:

    git status
    git add .
    git commit -m "说明本次修改内容"
    git pull –rebase origin main
    git push origin main

    如果确认远程仓库没有其他更新,也可以简化为:

    git add .
    git commit -m "说明本次修改内容"
    git push

    团队协作时,建议在开始修改代码前先执行:

    git pull –rebase origin main

    修改完成后再执行:

    git status
    git add .
    git commit -m "说明本次修改内容"
    git pull –rebase origin main
    git push origin main


    十八、总结

    使用 VS Code 将代码上传到 GitHub,核心流程可以概括为:

    git init
    git add .
    git commit -m "初始化项目代码"
    git remote add origin 远程仓库地址
    git branch -M main
    git push -u origin main

    代码更新后的核心流程是:

    git add .
    git commit -m "本次修改说明"
    git push

    Git 每次提交都会生成一条新的版本记录。正常使用 git add、git commit 和 git push,不会清除之前的提交历史。

    对于 Python、深度学习、大模型和 Agent 项目,还需要重点注意:

  • 正确配置 .gitignore;
  • 不要上传 API Key 和账号密码;
  • 不要直接上传大型模型和完整数据集;
  • 提交前使用 git status 检查文件;
  • 多人协作时,推送前先同步远程代码。
  • 掌握这些基本操作后,就可以在 VS Code 中完成项目初始化、版本管理、代码更新、远程备份和团队协作。

    赞(0)
    未经允许不得转载:171主机测评 » VS Code 将本地代码上传到 GitHub 的完整方法
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址