web-dev-qa-db-ja.com

多くのプログラマーがコードをgithubに移動するのはなぜですか?

過去6か月以上、sourceforge.netや他のホスティングサイト「Move to GitHub」でホストされている多くのコードを見てきました。 「Moved to Github」というフレーズを含む単なるGoogle検索は、githubに移動されたテキストを含むいくつかの結果を返します。これは私にとって非常に混乱しています。なぜ人々は動いているのでしょうか。 GitHubの方が優れているということですか、それとも私には見られない特別な利点があるということですか?

116
Chibueze Opata

これは、 distributedversion control systems へのより広範な移行の症状です。

従来、非分散型VCSをホストしていた一部のWebサイト(CodeplexやSourceForgeなど)は、DVCS(GitやMercurialなど)のサポートを追加するのに少し時間がかかりました。そのため、プロジェクトにDVCSを使用したい人々は、プロジェクトをサポートするプロバイダー(GithubやBitBucketなど)にプロジェクトを移行する必要がありました。 Githubは最初にDVCSサポートを提供したものの1つだったので、当然のことながら多くの人々がそれを利用するためにそこでコードを移行しました。

これらの他のWebサイトはDVCS(たとえば、CodeplexがMercurial&Gitをサポートするようになった)に追いついたばかりですが、フォークやプルリクエストの送信などの機能に関してはまだ遅れています。 DVCS GithubとBitbucketを実際に活用することは、依然として最良のオプションです。

102
MattDavey

プロジェクトのホスティングはインフラストラクチャです。インフラストラクチャはネットワークに影響を及ぼします。つまり、より多くの人々がそれに接続するほど、インフラストラクチャはより有用になります。 (特に、有用性はO(number_of_connections)です。つまり、個々のメンバーではO(total_members)であり、システム全体ではO(total_members ^ 2)です)。これは、自然独占と呼ばれる効果につながります。つまり、誰もが同じシステムを使用するときに有用性が最大化されるため、そのようなシステムでは1人の競争者だけが生き残ることは当然です。

したがって、市場リーダーであるGitHubに参加することは理にかなっています。 SourceForge、Google Code、CodePlex combinedよりも、GitHubの方がリポジトリ、ユーザー、ブランチ、リビジョンが多いeverythingがあります。

もちろん、興味深い質問は、ネットワークの影響により市場リーダーが自然な独占権を自動的に獲得することになる場合、GitHubはSourceForgeをどのようにして破壊できたのでしょうか。

そして、答えはsoとなることで、はるかに小さなインフラストラクチャに参加することの苦痛は、初期の採用者にとってそれだけの価値があるということです。

  • GitHubは、SourceForge(または少なくともほとんどの人が使用したSourceForgeの一部)に匹敵する機能セットを備えたGitホスティングを提供した最初の企業です。
  • GitHubは、UIの観点からすごくよかった:洗練された最新のWeb UI
  • GitHubはテクノロジー面でクールでした:Ruby on Rails、Sinatra、Erlang、node.js
  • GitHubはWeb 2.0であり、ソーシャルコーディングとプロジェクトを介したユーザーに重点を置いていました
45
Jörg W Mittag

理由の1つはオーディエンスが異なるためだと思います。sourceforgeは主にホスティングapplicationsをホストするためのものです。おそらく、プロジェクトページの最も顕著な機能は、コンパイルされた実行可能ファイル(または他のダウンロード)へのリンクです。つまり、開発者ではなくsersを対象としています。

一方、githubは主にホスティング用ですソースコード、プロジェクトページの最も顕著な機能はmasterブランチのディレクトリリストです。ユーザーではなくdevelopers(プロジェクトのコードを変更または使用したい)を対象としています。

これが、開発者向けのツールとライブラリがgithubに移行する理由の1つだと思います。

25
svick

Sourceforge Gitも提供しています ですが、Githubは(現時点では)優れています。

  • 彼らのプルリクエストシステムはうまく機能します(例えばGitoriousよりはるかに優れています)
  • 彼らの最近アップグレードされた通知は非常に便利です。
  • 彼らはすぐにコードを表示します

彼らのキラー機能は、私の意見では「ネットワークグラフ」です。

enter image description here

gitkとの違い:他の人のブランチで何が起こっているかを示します(ブランチをプルする必要はありません)。これは、コラボレーションするときに非常に重要です。

15
Nicolas Raoul

GitHubはシンプルで使いやすく、使いやすく、強力で見栄えがよく、Web 2.0風です。

私はGitHubを使用していますが、SourceForgeよりも非常に簡単に使用できます。SourceForgeは、一連のメニューの背後にそのパワーが隠されており、セットアップを行うにはかなり複雑な操作が必要でした。そして私はプログラマーです。

さらに、もう1つの強力な機能があると思います。GitHubは、最初のオープンソースプロジェクトをどこかに公開したい個人でも、商用(プライベート)プロジェクトで共同作業をしたいチームでも、ほぼすべてのユーザーに完全に対応します。ユースケース。

結局のところ、それは人間の心理学についてだと思います。この製品は使いやすく、使いやすく、安価(または無料)ですか?見栄えがよく、友人にすすめたいですか? GitHubの場合、これらすべての質問に「はい」と答えます。

11
Suman

また、githubが提供する、私がまだ言及していない、かなりスマッシュな機能も考慮に入れる必要があります。

  • github風味のマークダウンを備えたgithubページ
  • githubモバイルアプリ
  • github Eclipseプラグイン
  • mac用github
  • githubジョブ
  • windows向けgithub
  • github発券/バグ追跡システム
  • シームレスなサードパーティ統合を可能にするgithub開発者API
  • 頻繁なUIの更新/機能強化(ある日から次の日への変更を文字通り確認できます 検索テキストボックスがフォーカスで動的に拡張されるようになりました 、時計が新しいスターボタンになったなど)
  • github gists (ユーティリティスクリプト、短いコードスニペットなどに適しています)
  • hub によるシームレスなgithub統合

他のサイトにはこれらの機能があるかもしれませんが、私はそこにそれらすべてを持っているサイトはないと確信しています。

これらの人たちは事実上どこにでもいます... Webとデスクトップに同様にゆっくりと技術的な利点を分散させます。彼らは 大きくなり、より良くなる であり、最高のエンジニアを雇っています(MicrosoftからPhil Haackを盗むことさえできました...

5
A-Dubb

追加の開発者をGitHubに引き寄せる可能性があるもう1つの理由は、開発者ツールがgitを採用し始めており、EclipseなどのプラットフォームにそのままGitサポートが組み込まれていることです(Java、C++開発者などのパッケージに適用)。プロジェクトをGitHubにアップロードするための手順が少なくて済みます。

4
Jessica Brown