【超详细】VSCode连接GitHub全攻略:上传/克隆代码一步到位

一、前言

  • 为什么要用VSCode + GitHub?
    • GitHub:全球最大代码托管平台,支持版本控制和协作开发
    • VSCode:轻量级代码编辑器,内置Git支持,无缝集成GitHub
  • 适用场景:个人项目管理、团队协作、开源贡献

二、准备工作

1. 注册GitHub账号

  • 访问 GitHub官网 注册账号
  • 验证邮箱(重要!否则无法推送代码)

2. 安装必要工具

3. 配置Git全局信息(必做!)

git config --global user.name "你的GitHub用户名" git config --global user.email "你的GitHub注册邮箱"

验证配置:

git config --global --list

三、连接GitHub与VSCode

方法1:HTTPS协议(适合新手)

  1. 在VSCode中登录GitHub
    • 安装扩展 GitHub Pull Requests and Issues
    • 按 Ctrl+Shift+P 输入 GitHub: Sign in,选择浏览器授权
  2. 克隆仓库
    • 点击VSCode左侧活动栏的 源代码管理图标 → 克隆存储库
    • 输入GitHub仓库HTTPS地址(如 https://github.com/用户名/仓库名.git

方法2:SSH协议(更安全,免密码)

测试连接

ssh -T [email protected]

看到 Hi 用户名! 表示成功

将公钥添加到GitHub

复制公钥内容: cat ~/.ssh/id_ed25519.pub GitHub → Settings → SSH and GPG keys → New SSH Key

生成SSH密钥

ssh-keygen -t ed25519 -C "[email protected]

四、实战操作:上传与克隆代码

1. 克隆仓库到本地

git clone [email protected]:用户名/仓库名.git

或通过VSCode直接克隆:
Ctrl+Shift+P → Git: Clone

2. 上传代码到GitHub

步骤2:提交并推送

git add . git commit -m "首次提交" git push -u origin main

步骤1:初始化本地仓库

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

3. 同步远程更新

git pull origin main

或通过VSCode界面点击 源代码管理面板的同步按钮


五、常见问题解决

1. 推送失败:权限被拒绝

  • SSH协议:检查密钥是否添加正确

HTTPS协议:更新凭据

git config --global credential.helper manager-core

2. 合并冲突

  • 冲突文件会包含 <<<<<<< 标记

手动修改后执行:

git add 冲突文件 git commit -m "解决冲突"

3. 错误:fatal: refusing to merge unrelated histories

强制合并不相关历史:

git pull origin main --allow-unrelated-histories

六、效率技巧

  1. VSCode快捷键
    • Ctrl+Shift+G:打开Git面板
    • Ctrl+Shift+P:快速执行Git命令
  2. Git图形化操作
    • 右键文件 → “暂存更改”
    • 提交历史中右键提交 → “撤销提交”
  3. .gitignore文件
    忽略无需上传的文件(如 node_modules/

七、结语

  • 通过本文,你已掌握VSCode与GitHub的完整协作流程。
  • 遇到问题?欢迎在评论区留言!

相关推荐

  • GitHub Actions自动化部署教程
  • VSCode必装插件推荐

Read more

【金仓数据库】ksql 指南(五) —— 创建与管理索引和视图(KingbaseES 查询优化核心)

【金仓数据库】ksql 指南(五) —— 创建与管理索引和视图(KingbaseES 查询优化核心)

引言 掌握表的基本运作之后,若想优化查询效率并简化数据访问,就要去学习“索引”和“视图”的运用,索引类似于“书籍目录”,可以极大地加快查询速度;视图类似“数据窗口”,能够隐藏复杂的查询逻辑,还能控制数据的可见性。本文就“ksql命令行操作索引与视图”展开论述,把从“作用到创建,再到查看,维持直至删除”的全过程拆解成实际操作步骤,并结合例子和避坑提示,以使初学者能够领悟并付诸实行。 文章目录 * 引言 * 一、前置准备:确认操作基础(衔接前文,确保连贯) * 1.1 1. 连接数据库并切换目标模式 * 1.2 2. 插入测试数据(用于验证索引 / 视图效果) * 二、索引管理:给表 “加目录”,加速查询 * 2.1 1.

By Ne0inhk
【MySQL】第七节—表的增删改查,吃透这篇就够了(上)

【MySQL】第七节—表的增删改查,吃透这篇就够了(上)

Hello,我是云边有个稻草人,表的增删改查,ACTION! 《MySQL》本篇文章所属专栏—持续更新中—欢迎订阅! 目录 一、Create  1.1 单行数据 + 全列插入  1.2 多行数据 + 指定列插入  1.3 插入否则更新  1.4 替换  二、Retrieve(查询) 2.1 select 列  【全列查询】 【指定列查询】 【查询字段为表达式】 【distinct 结果去重】 2.2 where条件  【英语不及格的同学及英语成绩 ( < 60 )】 【语文成绩在 [80, 90] 分的同学及语文成绩】 【数学成绩是 58 或者

By Ne0inhk
掌控消息全链路(1)——初识RabbitMQ:从核心概念到六种常用模式全景解析

掌控消息全链路(1)——初识RabbitMQ:从核心概念到六种常用模式全景解析

🔥我的主页:九转苍翎⭐️个人专栏:《Java SE 》《Java集合框架系统精讲》《MySQL高手之路:从基础到高阶 》《计算机网络 》《Java工程师核心能力体系构建》天行健,君子以自强不息。 Linux操作系统版本:Ubuntu 24.04 LTS 1.Message Queue概述 计算机之间的通信方式主要有两种:同步通信和异步通信同步通信(Synchronous Communication):通信双方在严格的时间约束下进行交互。发送方发送请求或数据后,会主动等待并阻塞自身,直到收到接收方的明确响应(成功、失败或超时)才会继续执行后续操作。整个过程像是在进行一场“实时对话”异步通信(Asynchronous Communication):发送方发出请求或消息后,不等待接收方的即时响应,而是立即返回并继续执行后续任务。接收方在准备好结果后,通过某种机制将响应或结果“推送”或“通知”给发送方。整个过程更像是“发送邮件”。 MQ(Message Queue,

By Ne0inhk
Flutter for OpenHarmony:tostore 鸿蒙原生 KV 数据库,支持 SQL 与 NoSQL 混合存储(全能型数据引擎) 深度解析与鸿蒙适配指南

Flutter for OpenHarmony:tostore 鸿蒙原生 KV 数据库,支持 SQL 与 NoSQL 混合存储(全能型数据引擎) 深度解析与鸿蒙适配指南

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net 前言 在移动应用开发中,数据持久化(Data Persistence)永远是架构设计中不可或缺的一环。无论是保存用户的登录状态、偏好设置,还是缓存新闻列表、聊天记录,选择一个合适的数据库往往决定了 App 的运行流畅度和开发效率。 在 Flutter 生态中,我们熟知的数据库方案琳琅满目: * Shared Preferences: 轻量级,但只适合存简单的 Key-Value,性能较差,且不支持复杂查询。 * Sqflite: 基于 SQLite 的封装,功能强大且稳定,但它是关系型数据库,Schema 变更(数库迁移)极其繁琐,且需要编写大量的 SQL 语句或依赖复杂的 ORM。 * Hive: 纯 Dart 编写的 NoSQL 数据库,速度极快(

By Ne0inhk