为什么 Django 应用程序迁移到 GitHub?
自从我开始学习 Django 框架以来,我遇到了几个从 GoogleCode 切换到 GitHub 的应用程序。但我看不到对此事实的任何解释...有什么具体原因吗?这是否意味着 GitHub 更适合 Django 相关项目?
Since I started learning Django framework I came across several applications that switched from GoogleCode to GitHub. But I can't see any explanation for this fact... Is there any specific reason for that? Does this mean it GitHub is more adequate for Django-related projects?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
我相信有几个原因。 首先,与 Google Code 相比,Github 实在是太棒了。他们将代码和项目重新发明为社交对象,并采用 git 的分布式模型,使其成为一种文化,在这种文化中,执行、更改和推进比项目所有权更重要。 Github 鼓励分叉(他们让分叉变得超级简单)作为协作方式(分叉、修改和发送拉取请求)。如果“上游”项目的所有者行动太慢,你最终会成为该项目的所有者。
除了您自己的项目之外,Github 还会公开您关注的人以及您关注的其他项目。也就是说,在 Github 上找到一个优秀的程序员并关注那个人。如果那个人开始关注一个项目,这是一个强有力的指标,表明该项目是值得的,并且可能是您下次在该领域寻找东西时的不错选择。开始关注从事您今天使用的项目的人员,您很快就会看到其价值。
第二:当时,Google 代码仅支持基于 Subversion 的项目(而现在,它们还支持 Mercurial。)如果您以前只使用过 Subversion,可能没什么意义,但差异是关键为什么很多人转向 git 和 Github。 Mercurial 实际上被认为比 git 更Pythonic,因此许多人使用 Bitbucket(我很确定 Github 启动时它们还没有出现。)
第三:大多数 Django 可重用应用程序都是单人项目 Google Code 的很多功能都没有那么有用。一般来说,对于较小的项目来说,Github 更容易使用。
第四:可用性。 Github 看起来很棒并且易于使用。
I believe there are several reasons. First and foremost, Github was just awesome compared to Google Code. They reinvented code and projects as social objects and took git's distributed model and made it into more of a culture where doing, making changes and pushing forward is more central than project ownership. Github encourages forking (they make it super easy) as the way to collaborate (fork, modify and send pull requests). If the owners of the "upstream" project moves too slow, you eventually become the owner of the project.
Beyond your own projects, Github exposes who you're following and which other projects you follow. That is, find a great programmer on Github and follow that person. If that person starts following a project, it's a strong indicator that project is worthwhile and likely a good choice next time you're looking for something in that area. Start following the people working on the projects you're using today and you'll soon see the value of this.
Second: At the time, Google Code only supported Subversion-based projects (whereas now, they also support Mercurial.) If you've only used Subversion before, it might not say much but the differences are key to why a lot of people moved to git and Github. Mercurial is actually considered more
pythonic
than git and thus many use Bitbucket (I'm pretty sure they weren't around when Github launched.)Third: Most Django reusable apps are single person projects so many features of Google Code are not that useful. In general, Github is way easier to work with for smaller projects.
Fourth: The usability. Github looks great and is easy to use.
这主要是由于偏好。 GitHub 为代码提供了更好的“社交”工具(更容易分叉,更容易发出拉取请求,诸如此类)。而且,说实话,GitHub 的 UI 比 Google Code 更好。
It's mostly due to preference. GitHub offers better "social" tools for code (easier to fork, easier to make pull requests, that sort of thing). And, to be honest, GitHub's UI is better than that of Google Code.
我不在 GitHub 上。事实上,过去一年我已经使用 Mercurial 作为我的 Python/Django 项目的 SCM,我认为它很棒(来自使用 SVN 多年的人)。以下是 Joel Spolsky 撰写的关于 Mercurial 的精彩入门指南:http://hginit.com/
至于托管 Mercurial 的位置存储库,我使用 BitBucket.org
I'm not on GitHub. In fact I have used Mercurial as SCM for my Python/Django projects for the past year and I think its great (coming from someone who used SVN for years). Here's a great primer on Mercurial by Joel Spolsky: http://hginit.com/
As for a place to host your Mercurial repository, i use BitBucket.org
因为如果您运行一个开源项目并希望增加贡献,那么迁移到 github 可能是最简单、最直接的方法。除了出色的服务之外,当大多数 OSS 开发人员在那里拥有帐户并在那里托管自己的东西时,这几乎尽可能地降低了他们的贡献障碍。
就我个人而言,如果您使用 SVN,那么我贡献回补丁的可能性极低。如果你在 git 上,那会更高,但如果你在 github 上,我无论如何都会在那里 fork 你的项目。即使我没有点击“拉取请求”按钮,您仍然可以看到我自己的个人补丁,如果您觉得它们有趣,则可以将它们拉入。它还允许您的用户做同样的事情,这使得使用 github 托管项目更具吸引力,即使您不破解它们。
Because if you run an open source project and want to increase contributions, moving to github is probably the easiest and most straight forward way to do it. Being a phenomenal service aside, when most OSS devs have accounts there and host their own stuff there, it brings the barrier to contributions down almost as far as possible for them.
For me personally, if you are on SVN there is an extremely low chance that I will contribute back patches. If you are on git, that gets higher, but if you are on github, i am going to fork your project there anyways. Even if I don't hit the "pull request" button, you are still able to see my own personal patches, and pull them in if you find them interesting. It also allows your users to do the same thing, which makes it more attractive to use github hosted projects, even if you don't hack on them.
因为google code没有git进行源代码管理?虽然它确实有 Mercurial,但有些人更喜欢 git。
Because google code doesn't have git for source code management? It does have Mercurial though, but some people would rather git.