VS Code + Git + GitHub 完整使用教程
本文介绍了如何在 Visual Studio Code 中集成 Git 和 GitHub 进行代码版本控制。内容包括软件安装配置、Git 基本概念(仓库、提交、分支等)、SSH 密钥连接 GitHub、日常操作(克隆、推送、拉取)、分支管理策略以及团队协作流程(Fork、Pull Request)。此外还涵盖了常见问题排查如身份验证失败、合并冲突处理,以及高级技巧如历史查看和补丁应用。旨在帮助开发者快速上手本地与云端协同开发环境。

本文介绍了如何在 Visual Studio Code 中集成 Git 和 GitHub 进行代码版本控制。内容包括软件安装配置、Git 基本概念(仓库、提交、分支等)、SSH 密钥连接 GitHub、日常操作(克隆、推送、拉取)、分支管理策略以及团队协作流程(Fork、Pull Request)。此外还涵盖了常见问题排查如身份验证失败、合并冲突处理,以及高级技巧如历史查看和补丁应用。旨在帮助开发者快速上手本地与云端协同开发环境。

Git 是一个分布式版本控制系统,它可以帮助你跟踪和管理代码的变更。简单来说,它就像是一个时间机器,可以让你:
GitHub 是一个基于 Git 的云服务平台,提供代码托管服务。它可以让你:
Visual Studio Code (VS Code) 是微软开发的一款轻量级但功能强大的代码编辑器。它内置了 Git 支持,让你可以直接在编辑器中进行 Git 操作,无需使用命令行。
git --version,如果没有安装,系统会提示安装brew install gitUbuntu/Debian:
sudo apt update
sudo apt install git
Fedora:
sudo dnf install git
打开终端或 VS Code 的终端(快捷键:Ctrl+ `),输入以下命令:
git config --global user.name "你的名字"
git config --global user.email "你的邮箱地址"
这里的邮箱地址应该与你的 GitHub 账号邮箱一致。
在开始使用 Git 之前,先了解一些重要概念:
仓库是 Git 用来存储项目所有文件和历史记录的地方。它可以是本地的(在你的电脑上),也可以是远程的(如托管在 GitHub 上)。
提交是对你项目进行的一次更改的快照。每次提交都有一个唯一的 ID,并包含提交消息,描述这次更改的内容。
分支是项目开发的独立线。默认分支通常称为 main 或 master。创建新分支可以让你在不影响主分支的情况下开发新功能。
在 Git 中,你需要先将更改添加到暂存区,然后才能提交这些更改。这让你可以控制哪些更改会被包含在下一次提交中。
推送是将本地提交发送到远程仓库(如 GitHub)的操作。
拉取是从远程仓库获取最新更改并合并到你的本地仓库的操作。
克隆是复制远程仓库到本地计算机的操作,创建一个完整的本地副本。
在 VS Code 中安装 GitHub 相关扩展,以获得更好的体验:
Ctrl+Shift+X)使用 SSH 密钥可以避免每次推送代码时都要输入密码。
ssh-keygen -t ed25519 -C "你的 GitHub 邮箱"type C:\Users\你的用户名\.ssh\id_ed25519.pub | clippbcopy < ~/.ssh/id_ed25519.pubcat ~/.ssh/id_ed25519.pub(然后手动复制输出内容)ssh -T git@github.com
如果显示"Hi username! You've successfully authenticated...",则表示设置成功。
从 GitHub 克隆一个存在的仓库到本地:
然后在 VS Code 中:
Ctrl+Shift+P 打开命令面板Ctrl+Shift+G)在 GitHub 上创建一个新的远程仓库:
将本地仓库连接到远程仓库:
Ctrl+Shift+P)推送本地仓库到 GitHub:
在 VS Code 中编辑文件,做出更改。
Ctrl+Enter 提交更改当 GitHub 仓库有新的更改时,你需要将它们同步到本地:
假设你在 'feature/login' 分支上完成了开发,现在想将其合并到 'main' 分支:
当你想为不是你创建的项目做贡献时:
当多人同时修改同一文件时,可能会产生冲突:
git pull origin main问题:推送时出现"Authentication failed"错误
解决方案:
问题:合并分支时出现"Merge conflict"
解决方案:
<<<<<<<, =======, >>>>>>> 标记问题:我想撤销未提交的更改
解决方案:
问题:我想撤销最后一次提交
解决方案:
问题:有些文件我不想纳入版本控制
解决方案:
.gitignore 文件# 忽略编译输出
/build/
/dist/
# 忽略依赖
/node_modules/
# 忽略日志文件
*.log
# 忽略环境配置
.env
.env.local
# 忽略编辑器配置
.vscode/
.idea/
创建补丁:
git diff > changes.patch
应用补丁:
git apply changes.patch
创建标签:
推送标签:
git push origin --tags
GitHub 提供了常见项目类型的 .gitignore 模板:
恭喜!你现在已经了解了如何使用 VS Code 结合 Git 和 GitHub 进行代码版本控制和协作。这些工具组合在一起,提供了一个强大的开发环境,可以帮助你更高效地管理项目。
记住,Git 和 GitHub 的学习是一个渐进的过程。随着你的经验积累,你会逐渐掌握更多高级技巧。最重要的是养成良好的版本控制习惯:
希望这个教程对你有所帮助!如果你有任何问题,可以查阅 Git 官方文档、GitHub 帮助文档 或 VS Code 文档。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML 转 Markdown 互为补充。 在线工具,Markdown 转 HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML 转 Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online
将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online