Appearance
Git 平台服务
不同的 Git 托管平台各有特色,了解各平台的特点和技巧,能帮助你更高效地利用这些工具。
GitHub 功能与技巧
GitHub 是全球最大的代码托管平台,功能极其丰富。
核心功能
GitHub Actions(CI/CD):
- 免费额度:公开仓库无限,私有仓库每月 2000 分钟
- 生态丰富:GitHub Marketplace 有数千个 Actions
GitHub Copilot:
- AI 代码补全(付费)
- 支持多种编程语言和编辑器
GitHub Codespaces:
- 云端开发环境(浏览器中的 VS Code)
- 适合快速贡献代码,无需本地环境配置
实用技巧
URL 技巧:
github.com/user/repo 仓库主页
github.com/user/repo/tree/main/src/ 指定目录
github.com/user/repo/blob/main/file.md 查看特定文件
github.com/user/repo/commit/abc123 查看特定提交
github.com/user/repo/compare/v1.0.0...v1.1.0 比较版本
在文件查看页面按 . 键 → 打开 Web 版 VS CodeGitHub CLI(gh):
bash
# 安装
brew install gh
# 认证
gh auth login
# 常用命令
gh repo clone user/repo # 克隆仓库
gh pr create # 创建 PR
gh pr list # 查看 PR 列表
gh pr checkout 123 # 检出 PR
gh issue create # 创建 Issue
gh issue list # 查看 Issue
gh release create v1.0.0 # 创建 Release
gh workflow run ci.yml # 手动触发 WorkflowGitHub 搜索技巧:
in:name 按仓库名搜索
in:description 按描述搜索
in:readme 按 README 内容搜索
stars:>1000 超过 1000 星
language:go 特定语言
size:<100 小于 100KB
pushed:>2026-01-01 最近有更新
user:username 特定用户的仓库
org:orgname 特定组织的仓库GitLab 功能与技巧
GitLab 是功能最完整的 DevOps 平台,支持从代码到部署的全流程。
核心特色
自托管(GitLab CE/EE):
- 可以在自己的服务器上部署
- 适合有数据安全要求的企业
GitLab CI/CD:
- 比 GitHub Actions 更早推出
- 功能强大,配置灵活(
.gitlab-ci.yml) - 与 Kubernetes 集成完善
Merge Request(MR)特色:
- 支持多种合并策略(Merge、Squash、Rebase)
- 可以在 MR 中展示管道状态
- 支持仅允许合并后删除源分支
GitLab 特有功能:
- Auto DevOps:自动检测语言,生成 CI/CD 配置
- Container Registry:内置容器镜像仓库
- Package Registry:npm、Maven、PyPI 等包仓库
- Wiki:内置 Wiki 系统
- Snippets:代码片段分享
- Web IDE:浏览器内编辑代码实用技巧
yaml
# .gitlab-ci.yml 技巧
# 只在特定分支运行
test:
script: npm test
only:
- main
- merge_requests
# 缓存加速
cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- node_modules/
# 只有 main 合并时才部署
deploy:
script: ./deploy.sh
environment: production
only:
- main
when: manual # 需要手动触发Bitbucket 功能与技巧
Bitbucket 是 Atlassian 旗下的 Git 平台,与 Jira、Confluence 等工具深度集成。
核心特色:
- 私有仓库免费(5 人以下团队)
- 与 Jira 深度集成(自动关联 Issue)
- 支持 Mercurial 和 Git
- 内置 Bamboo CI 集成
Jira 关联:
bash
# 提交信息中包含 Jira Issue 编号会自动关联
git commit -m "PROJ-123: 实现用户登录功能"
# 在 Bitbucket 中,提交会自动关联到 Jira Issue PROJ-123自建 Git 服务(Gitea / GitLab CE)
Gitea
Gitea 是轻量级的自建 Git 服务:
bash
# Docker 部署
docker run -d \
--name gitea \
-p 3000:3000 \
-p 22:22 \
-v /data/gitea:/data \
gitea/gitea:latest特点:
- 极轻量(单个二进制文件,内存占用小)
- 类 GitHub 界面
- 支持 Actions(兼容 GitHub Actions 语法)
- 开源免费
GitLab CE(社区版)
适合对功能要求更高的团队:
bash
# Docker 部署
docker run -d \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest适合场景:
- 有数据安全合规要求
- 需要完整 CI/CD 功能
- 团队规模较大
平台选择建议
| 场景 | 推荐平台 |
|---|---|
| 开源项目 | GitHub(最大社区) |
| 企业内部(云端) | GitLab.com 或 GitHub Enterprise |
| 企业自托管(完整功能) | GitLab CE/EE |
| 企业自托管(轻量) | Gitea |
| Atlassian 工具链 | Bitbucket |
总结
每个平台都有其优势:GitHub 生态最强,GitLab 功能最全,Bitbucket 与 Atlassian 集成最好,Gitea 最轻量。
选择平台时考虑:团队规模、数据安全要求、现有工具链集成、成本预算。对于大多数团队,GitHub 或 GitLab 是最常见的选择。