近日,Google Code开始支持Git 仓库。此前,Google Code 只支持Subversion 与Mercurial 仓库,这是根据一项追溯到2008 年的调查结果得出的,随后发布了官方声明。
随着 GitHub 的不断流行以及使用 GitHub 存储的项目数量的不断增加,同时 Eclipse Labs 托管逐步被 GitHub 的双向同步所取代以及 Juno Git 迁移的不断进行,很多人会因 Google Code 不支持 Git 仓库而要离开。一个支持FAQ 表明开发者们需要“smart http”协议(需要使用1.6.6 版的Git)。此外, Eclipse Labs 也已经获得了 Git 支持。
从某种程度上说,使用 Mercurial 是因为 Google 现有的 Python 基础设施以及它能以比 Git 更简单的形式适应于 GFS 后端。然而,随着 Eclipse Indigo 的发布并包含了 JGit 1.0 ,Google 现在可以通过更加与时俱进的前端来集成其后端。此外,Git 现在还有其他几个绑定,比如更加开放的 libgit2 ,它本身已经衍生出了几种语言分支,如 pygit2 ,这会将 Git 的互操作带到 Python 语言中。
Google 并没有明确提到后端使用何种实现,但前端的反应却是很快的。如果你有 Google Code 项目,那么你就可以创建 Git 仓库了。对于新项目来说亦是如此,系统会提示你选择何种仓库。
现在看来 Google Code 将会继续支持 Mercurial 与 Git,但 SVN 的时日似乎已经不多了。唯一一个前景尚不明朗的选手就是 Bitbucket 了,它被Atlassian 收购还不到一年。尚在使用Mercurial 的唯一一个重要选手就是位于 hg.java.net 的 OpenJDK,它最初是由 Sun 创建的开发生态圈。
无论背后的实现与原因是什么,Google Code 支持 Git 仓库将会促使 Git 成为新项目及现有开源项目所采用的事实上的仓库标准。
更新:现有项目可以转换到 Git 仓库。然而,项目的 Wiki 内容也存储在版本控制仓库当中;对于 SVN 来说,在 /wiki 目录下,对于 Git 或 Hg 来说,在单独的域 wiki.projectname.googlecode.com/git(或 /hg)下。因此,当从一种仓库格式转换为另一种时,你需要确保迁移 Wiki 页面,因为他们并不会自动迁移。建议使用 Google Code 保存 wiki/issues,但却使用 GitHub 保存源代码的项目在转换前为 wiki(比如说使用 Git svn clone)制作一份本地的 Git 副本,这样可以将 wiki 页面无法访问的时间降到最低。
查看英文原文: Google Code Gets Git
评论