🏢 将GitHub应用到企业
10.1 将世界标准的开发环境引入企业现场
GitHub 已成为一种世界标准的开发环境,尤其在开源世界中,几乎所有开源项目都在 GitHub 上公开源代码。许多企业也开始使用开源软件(OSS),因此 GitHub 在企业中的应用也逐渐普及。
企业引入 GitHub 的好处
- 减少新员工适应时间:由于许多程序员已经在 GitHub 上熟悉了开发流程,新员工可以在第一天就开始编写代码并发送 Pull Request,节省了
KaTeX can only parse string typed expression
2∼4 周的适应时间。 - 降低维护成本:GitHub 省去了维护内部仓库服务器的成本,让程序员可以专注于开发。
- 促进开源开发:让新员工在企业中使用 GitHub,可以快速接触到开源开发世界,激发他们对开源项目的兴趣。
10.1.1 使用 Organization
企业导入 GitHub 时建议使用 Organization 账户。该账户提供以下功能:
- 统一控制面板
- 团队创建与权限管理
- 用户管理与支付功能
费用与个人账户不同,具体请参考 GitHub Organization Plans。
10.1.2 确认 GitHub 的安全性
GitHub 公司已经发布了安全保障的相关信息,用户数据被严密保管在 GitHub 的数据中心,客服人员也有严格的操作规范。详细信息请查阅 GitHub 安全保障。
10.1.3 注意维护时间
GitHub 每年会有几次短时间的系统维护,通常在美国的深夜进行,国内企业需注意时差影响。维护前 GitHub 会发布系统广播,详细信息可在 GitHub Broadcasts 查看。
10.1.4 查看故障信息
GitHub 在官网上公开了故障信息,虽然故障频率较高,但处理迅速。建议企业在 GitHub 故障时准备备用发布方案。详细信息请查看 GitHub 故障信息日志。
10.2 GitHub Enterprise
GitHub 公司为需要内部部署的企业提供了 GitHub Enterprise (GHE),已被许多大型 IT 企业采用。
10.2.1 概述
GitHub Enterprise 将 GitHub 的所有服务搬到企业内部,支持非公开仓库的创建,账户管理可与 LDAP/CAS 集成。该服务需要根据用户数以年为单位购买许可证,详细信息请参考 GitHub Enterprise 定价。
10.2.2 引入的好处
- 封闭的社会化编程环境:GitHub Enterprise 可以在企业内部构筑社会化编程环境,促进新产品和新工具的诞生。
- 控制维护与故障时间:企业可以自主控制维护与故障时间,降低对开发进度的影响。
10.2.3 引入的弊端
- 运用成本高:除了许可证费用,还需准备服务器并进行维护,增加了人力成本。
- 适合引入的情况:
- 源代码不可外传
- 希望维护与故障时间可控
10.3 能实现 Git 托管的软件
以下是一些与 GitHub 功能类似的开源软件:
- GitBucket:https://github.com/takezoe/gitbucket
- GitLab:http://gitlabbq.com
- Gitorious:https://gitorious.org/gitorious
- RhodeCode:https://rhodecode.com
这些软件虽然提供了类似功能,但使用前需确认是否满足需求。
10.4 小结
GitHub 为 OSS 世界的软件开发带来了变革,同样也能为企业的软件开发带来新的理念。建议以软件开发为主的企业积极引入 GitHub。
附录A 支持GitHub的GUI客户端
A.1 GitHub for Mac, GitHub for Windows
GitHub 公司提供了 Mac 版和 Windows 版的 Git 客户端,功能基本相同,支持以下操作:
- 从 GitHub 端 clone 仓库
- 显示仓库的历史记录
- 提交仓库的修改内容
- 切换分支
- 向 GitHub 端进行 push
详细信息请参考 GitHub for Mac 和 GitHub for Windows。
A.2 SourceTree
Atlassian 公司提供的 SourceTree 支持 Git 与 Mercurial,并能与 Bitbucket 和 Stash 集成。详细信息请参考 SourceTree。
附录B 通过Gist轻松实现代码共享
B.1 Gist 的特点
Gist 是一款简单的 Web 应用程序,常用于共享示例代码和错误信息。它支持多种语言的语法高亮,文档在版本管理系统的管理之下,用户可以放心编辑。
B.2 创建 Gist
Gist 的创建页面包含以下功能:
- Gist description:对当前 Gist 进行简要说明。
- Name this file:指定文件名,系统会自动识别扩展名。
- Language:选择编程语言,文件内容会根据所选语言进行语法高亮。
- ACE Editor:支持插入 tab 等操作。
- Add another File:一个 Gist 中可以包含多个文件。
- Create Secret Gist:创建的 Gist 不会被公开,只有知道 URL 的人可以查看。
- Create Public Gist:以当前内容创建 Gist,创建后会自动分配 URL。
详细信息请参考 Gist。
🖥️ Gist 功能详解
📂 Gist 的基本概念
Gist 是 GitHub 提供的一项功能,允许用户轻松共享代码片段、笔记或其他文本内容。通过 Gist,开发者可以快速分享代码片段,而无需创建完整的 GitHub 仓库。
Gist 的创建与共享
- 创建 Gist:通过 GitHub 的 Gist 页面,用户可以创建新的 Gist,并选择是否公开或私有。
- 共享 Gist:创建后,Gist 会生成一个唯一的 URL,用户可以通过该 URL 与其他开发者共享 Gist。
🔍 查看 Gist
Gist 的菜单
Gist 页面的菜单根据用户权限的不同而有所区别:
- 自己创建的 Gist:包含 Edit(编辑) 和 Delete(删除) 按钮。
- 其他人的 Gist:包含 Fork 按钮,用户可以根据其他人的 Gist 创建自己的 Gist。
Gist 的页面功能
- Gist Detail:访问 Gist 的 URL 时显示的页面,包含 Gist 的文件内容及评论等详细信息。
- Revisions:查看 Gist 的变更历史记录及差别。
- Download Gist:将 Gist 以
tar.gz格式下载。 - Clone this gist:显示 clone 所需的路径。如果是自己的 Gist,在本地编辑后还可以进行
push等操作。 - Embed this gist:显示将 Gist 分享至博客时所需的 HTML。
- Link to this gist:显示当前 Gist 的 URL,方便直接分享。
📄 文件的菜单
每个文件上方都有一个菜单,包含以下选项:
- 文件名:显示文件的名称。
- 语言种类:指定文件的语言类型。
- 永久链接:获取文件的永久链接,方便本地下载。
- raw 链接:获取文件的原始内容链接。
📁 Your Gists 页面
通过点击 Gist 首页右上角的 Your Gists 按钮或直接访问 URL,用户可以进入 Your Gists 页面,查看自己的 Gist 列表。
左侧菜单
- Forked:显示通过 Fork 创建的 Gist。
- Starred:显示已经标记 Star 的 Gist。
- 数字:表示每一类中 Gist 的数量。
📝 小结
Gist 是一款便捷的工具,适合共享笔记、错误信息以及一些不需要放入仓库的代码片段。通过 Gist,开发者可以轻松与他人共享琐碎信息,提升协作效率。

1217

被折叠的 条评论
为什么被折叠?



