Fadey's Blog

arrow_back返回首页
GitHub

GitHub入门到精通完全指南

GitHub是全球最大的代码托管平台,也是程序员必备工具。本文从注册到高级功能,带你全面掌握GitHub。

一、注册与基础设置

1. 注册账号

  • 访问 github.com 注册
  • 建议使用Gmail注册
  • 设置双重认证(2FA)保护账号安全

2. 配置SSH Key

# 生成SSH密钥
ssh-keygen -t ed25519 -C "your_email@example.com"

# 启动ssh-agent
eval "$(ssh-agent -s)"

# 添加密钥
ssh-add ~/.ssh/id_ed25519

# 复制公钥(粘贴到GitHub Settings -> SSH Keys)
cat ~/.ssh/id_ed25519.pub

二、Git基础命令

# 初始化仓库
git init

# 克隆远程仓库
git clone git@github.com:user/repo.git

# 添加文件到暂存区
git add .

# 提交更改
git commit -m "feat: 添加新功能"

# 推送到远程
git push origin main

# 拉取最新代码
git pull origin main

三、分支管理

# 创建并切换分支
git checkout -b feature/new-feature

# 查看所有分支
git branch -a

# 合并分支
git checkout main
git merge feature/new-feature

# 删除分支
git branch -d feature/new-feature

四、GitHub特色功能

1. Pull Request(PR)

代码协作的核心:

  • 从main分支创建feature分支
  • 在feature分支开发并推送
  • 在GitHub上创建PR
  • 团队成员Review代码
  • 合并到main分支

2. Issues

项目管理和bug追踪:

  • 创建Issue报告bug
  • 使用标签分类(bug、feature、enhancement)
  • 关联PR自动关闭Issue

3. GitHub Actions

CI/CD自动化:

# .github/workflows/ci.yml
name: CI
on: [push, pull_request]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
      - run: npm install
      - run: npm test

4. GitHub Pages

免费静态网站托管:

  • 仓库Settings -> Pages
  • 选择main分支的/docs目录或根目录
  • 自动获得 yourusername.github.io 域名

五、高级技巧

1. .gitignore

忽略不需要版本控制的文件:

# node_modules/
# .env
# *.log
# dist/
# .DS_Store

2. Git Hooks

使用husky设置Git钩子:

npx husky init
echo "npm run lint" > .husky/pre-commit

3. GitHub Copilot

AI编程助手,免费学生可用:

  • 自动代码补全
  • 根据注释生成代码
  • 解释复杂代码

六、最佳实践

  • 提交信息遵循Conventional Commits规范
  • 一个PR只做一件事
  • PR描述清楚说明改了什么、为什么改
  • 保护main分支,要求PR审核
  • 使用GitHub Projects管理任务

总结

掌握GitHub是现代程序员的基本功。从基础的Git命令到高级的Actions和Copilot,持续学习和实践才能精通。