GitHub入门

📅 发布时间:2026/7/12 1:56:12 👁️ 浏览次数:
GitHub入门
文章目录前言一、GitHub 基础入门1.1 什么是 GitHub核心功能一览1.2 GitHub 与 Git 的关系1.3 GitHub 的价值二、账号注册与 SSH 配置2.1 注册 GitHub 账号2.2 安装 Git 并配置2.3 SSH 密钥配置重点生成 SSH 密钥启动 SSH 代理并添加私钥复制公钥到 GitHub验证是否成功三、仓库创建与代码提交3.1 从本地开始已有项目上传到 GitHub3.2 从 GitHub 开始克隆已有仓库四、Git 分支管理4.1 分支的概念4.2 常用分支类型4.3 分支核心操作4.4 合并冲突与解决模拟冲突场景解决冲突4.5 分支删除删除本地分支删除远程分支误删恢复4.6 提交规范提交信息格式类型说明前言作为一名程序员GitHub 是我们每天都要打交道的平台。但很多初学者对 GitHub 的理解往往停留在“代码网盘”的层面对其强大的协作功能知之甚少。一、GitHub 基础入门1.1 什么是 GitHubGitHub 基于 Git 的代码托管 协作开发平台。简单来说它是程序员的“云端代码网盘 协作工作台 项目社区”。核心功能一览功能说明代码托管把项目代码存在云端版本管理记录每一次修改可回滚、可对比团队协作多人一起开发同一个项目Issue任务/BUG管理提需求、报 bugPull Request提交代码改动审核后合并GitHub Actions自动化测试、打包、部署GitHub Pages免费搭建静态网站Star/Fork/Watch收藏、复制、关注别人项目1.2 GitHub 与 Git 的关系这是初学者最容易混淆的概念GitGitHub本质本地版本控制工具云端代码托管平台是否需要联网不需要需要主要作用记录代码历史、分支管理存放代码、团队协作一句话总结Git 是工具GitHub 是平台。你在本地用 Git 写代码然后通过push命令把代码上传到 GitHub。GitHub 让 Git 从“本地工具”变成了“云端协作平台”。1.3 GitHub 的价值代码安全备份电脑坏了也不怕多人协作开发分工写代码不互相覆盖规范化流程提交 → 审核 → 合并 → 发布开源共享全球开发者一起贡献项目降低沟通成本代码、文档、任务都在一处二、账号注册与 SSH 配置2.1 注册 GitHub 账号访问 github.com使用邮箱注册即可国内 QQ/网易邮箱、国外 Gmail 均可。2.2 安装 Git 并配置下载 GitGit for Windows安装后打开 Git Bash配置全局用户名和邮箱# 配置用户名替换成你的gitconfig--globaluser.nameYour GitHub Username# 配置邮箱替换成你的gitconfig--globaluser.emailYour GitHub Email查看配置是否成功gitconfig--list可选的美化配置# 开启彩色输出gitconfig--globalcolor.ui auto# 配置别名偷懒必备gitconfig--globalalias.st status# git st 替代 git statusgitconfig--globalalias.br branch# git br 替代 git branch2.3 SSH 密钥配置重点SSH 比 HTTPS 更安全、更方便配置后无需每次输入密码。生成 SSH 密钥在 Git Bash 中执行ssh-keygen-ted25519-Cyour_emailexample.com全程按回车不用输入任何内容。生成后私钥~/.ssh/id_ed25519绝对不能泄露公钥~/.ssh/id_ed25519.pub要复制到 GitHub启动 SSH 代理并添加私钥eval$(ssh-agent-s)ssh-add ~/.ssh/id_ed25519复制公钥到 GitHub# Windowsclip~/.ssh/id_ed25519.pub# Macpbcopy~/.ssh/id_ed25519.pub登录 GitHub → 头像 → Settings → SSH and GPG keys → New SSH key粘贴公钥并保存。验证是否成功ssh-Tgitgithub.com看到Hi 用户名! Youve successfully authenticated即表示成功。三、仓库创建与代码提交3.1 从本地开始已有项目上传到 GitHub# 进入项目文件夹cdyour-project# 初始化 Git 仓库指定默认分支为 maingitinit --initial-branchmain# 创建 .gitignore 文件忽略不需要上传的文件touch.gitignore# 添加所有文件到暂存区gitadd.# 提交到本地仓库gitcommit-mfirst commit# 在 GitHub 新建空仓库不要勾选初始化选项# 关联远程仓库gitremoteaddorigin gitgithub.com:用户名/仓库名.git# 推送到 GitHubgitpush-uorigin main3.2 从 GitHub 开始克隆已有仓库# 克隆仓库到本地gitclone gitgithub.com:用户名/仓库名.git# 修改文件后提交gitadd文件名gitcommit-m修改说明gitpush origin main四、Git 分支管理4.1 分支的概念分支让你能在不影响主代码的前提下独立开发新功能。可以把主分支main想象成一篇论文的终稿功能分支feature就是论文的副本——你在副本上写新章节写好了再合并回终稿。4.2 常用分支类型分支类型命名规范用途主分支main/master存放稳定、可发布的代码开发分支develop团队日常开发分支功能分支feature/xxx开发单个新功能Bug修复分支bugfix/xxx修复开发中的 Bug紧急修复分支hotfix/xxx修复线上紧急 Bug4.3 分支核心操作# 查看所有分支gitbranch# 创建并切换到新分支最常用gitcheckout-bfeature/login# 切换分支gitswitch main# 合并分支先切到目标分支gitswitch maingitmerge feature/login# 删除已合并的分支gitbranch-dfeature/login4.4 合并冲突与解决冲突产生的原因两个分支修改了同一文件的同一行代码。模拟冲突场景创建calculator.py文件defadd(a,b):resultabreturnresult在feature分支修改为含税费的版本在main分支修改为四舍五入的版本合并时触发冲突解决冲突冲突文件会包含标记HEAD resultround(ab,2)# main分支的修改result(ab)*1.1# feature分支的修改feature解决思路删除标记保留需要的代码合并逻辑resultround((ab)*1.1,2)# 融合两个功能保存文件后gitaddcalculator.pygitcommit-m解决冲突合并税费和四舍五入功能4.5 分支删除删除本地分支# 删除已合并的分支gitbranch-dfeature/login# 强制删除未合并的分支谨慎gitbranch-Dfeature/unfinished删除远程分支gitpush origin--deletefeature/login误删恢复# 查看操作历史找到最后一次提交的哈希值gitreflog# 从提交记录恢复分支gitcheckout-bfeature/login 哈希值4.6 提交规范提交信息格式类型: 简短描述 详细描述可选类型说明类型说明示例feat新增功能feat: 新增用户登录接口fix修复 Bugfix: 修复密码加密错误docs修改文档docs: 更新API文档style代码格式调整style: 格式化代码refactor代码重构refactor: 简化函数逻辑test添加测试test: 添加单元测试chore工具配置修改chore: 更新.gitignore