¿Por qué muchos programadores mueven su código a github?

114

Durante los últimos 6 meses o más, he visto muchos códigos alojados en sourceforge.net, así como otros sitios de alojamiento "Move to GitHub". Una simple Búsqueda de Google con la frase "Movido a Github" devuelve varios resultados que contienen el texto movido a github. Esto es muy confuso para mí, y me pregunto, ¿por qué exactamente se está moviendo la gente? ¿Significa que GitHub es mejor o hay alguna ventaja especial que no estoy viendo?

    
pregunta Chibueze Opata 12.09.2012 - 12:27

8 respuestas

102

Este es un síntoma de una migración más amplia hacia distribuido sistemas de control de versión .

Algunos sitios web que tradicionalmente alojaban VCS no distribuidos (por ejemplo, Codeplex y SourceForge) fueron un poco lentos en agregar soporte para DVCS (por ejemplo, Git o Mercurial). Por lo tanto, las personas que querían usar DVCS para su proyecto se vieron obligadas a migrar sus proyectos a los proveedores que los apoyaban (por ejemplo, Github o BitBucket). Github fue uno de los primeros en ofrecer soporte DVCS, por lo que, naturalmente, muchas personas migraron su código allí para aprovecharlo.

Esos otros sitios web recién ahora están empezando a ponerse al día con DVCS (Codeplex, por ejemplo, ahora es compatible con Mercurial & Git), pero aún están muy por detrás en términos de características como forking y envío de solicitudes de extracción. Para realmente aprovechar las ventajas de DVCS, Github y Bitbucket siguen siendo las mejores opciones.

    
respondido por el MattDavey 12.09.2012 - 12:33
45

El alojamiento del proyecto es infraestructura. La infraestructura exhibe efectos de red, lo que significa que la infraestructura se vuelve más útil cuanto más personas están conectadas a ella. (En particular, la utilidad es O (número_de_conexiones), lo que significa que para cualquier miembro individual es O (total_miembros) y para todo el sistema es O (total_miembros ^ 2)). Esto, a su vez, conduce a un efecto llamado monopolio natural, lo que significa que es natural para un sistema de este tipo que solo sobrevivirá un competidor, ya que la utilidad se maximiza cuando todos usan el mismo sistema.

Entonces, tiene sentido unirse al líder del mercado, que es GitHub. Hay más repositorios, más usuarios, más sucursales, más revisiones, más todo en GitHub que en SourceForge, Google Code y CodePlex combinados .

La pregunta interesante es, por supuesto, si los efectos de la red significan que el líder del mercado obtiene automáticamente un monopolio natural, ¿cómo pudo GitHub romper la fuente de SourceForge?

Y la respuesta es, al ser tan perturbador que el dolor de unirse a una infraestructura mucho más pequeña valió la pena para los primeros usuarios:

  • GitHub fue el primero en ofrecer Git hosting con un conjunto de características comparable a la de SourceForge (o al menos la parte de SourceForge que la mayoría de la gente usó)
  • GitHub fue genial, desde el punto de vista de la interfaz de usuario: una interfaz de usuario web moderna y elegante
  • GitHub fue genial en cuanto a tecnología: Ruby on Rails, Sinatra, Erlang, node.js
  • GitHub era Web 2.0, con su enfoque en codificación social y usuarios sobre proyectos
respondido por el Jörg W Mittag 12.09.2012 - 15:43
25

Creo que una de las razones es la audiencia diferente: sourceforge es principalmente para alojar aplicaciones , probablemente la característica más destacada de una página de proyecto es un enlace al ejecutable compilado (o alguna otra descarga). En otras palabras, está dirigido a usuarios , no a desarrolladores.

Por otra parte, github es principalmente para alojar código fuente , la característica más destacada de la página del proyecto es la lista de directorios de la rama master . Está dirigido a desarrolladores (ya sea que desee modificar o usar el código de un proyecto), no a los usuarios.

Creo que esta es una de las razones por las que las bibliotecas y herramientas dirigidas a los desarrolladores se están moviendo a github.

    
respondido por el svick 14.09.2012 - 13:52
15

Sourceforge también ofrece Git , pero Github simplemente lo hace mejor (por ahora).

  • Su sistema de solicitud de extracción funciona bien (mucho mejor que Gitorious, por ejemplo)
  • Su notificación actualizada recientemente es muy conveniente.
  • Muestran el código de inmediato

Su característica asesina , en mi opinión, es el "gráfico de red":

Diferencia con gitk : también muestra lo que está sucediendo en las sucursales de otras personas (sin tener que tirar de ellas), lo cual es muy importante cuando se colabora.

    
respondido por el Nicolas Raoul 13.09.2012 - 08:17
11

GitHub es simple, fácil de usar, fácil de comenzar, potente y se ve muy bien y es un sitio web 2.0.

Uso GitHub, y me parece que es mucho más fácil de usar que SourceForge, que tenía su poder oculto detrás de una serie de menús y requería operaciones bastante elaboradas para configurar cualquier cosa. Y yo soy un programador.

Además, creo que hay una característica más poderosa: ya sea un individuo que quiera publicar su primer proyecto de código abierto en algún lugar, o los equipos que quieran colaborar en un proyecto comercial (privado), GitHub "escala" perfectamente. para casi todos los casos de uso.

Al final del día, creo que se trata de psicología humana. ¿Es el producto fácil de usar, fácil de usar, barato (o gratuito) ... se ve bien y es algo que recomendaría a mis amigos? Para GitHub, respondería sí a todas esas preguntas.

    
respondido por el Suman 12.09.2012 - 21:22
5

También debes tener en cuenta algunas de las características increíbles que ofrece Github que aún no he visto.

  • páginas github con rebaja con sabor a github
  • aplicación móvil github
  • complemento eclipse de Github
  • github para mac
  • trabajos de github
  • github para windows
  • github ticketing / bug tracking system
  • github developer api que permite a terceros sin problemas integración
  • actualizaciones / mejoras frecuentes de la interfaz de usuario (literalmente puede ver los cambios de un día para otro, es decir, el cuadro de texto de búsqueda ahora se expande dinámicamente enfocado , el reloj se convirtió en el nuevo botón de estrella, etc.)
  • github gists (buena para scripts de utilidades, fragmentos de código cortos, etc.)
  • integración perfecta de github a través de hub

Otros sitios pueden tener estas características, pero estoy bastante seguro de que ningún sitio por ahí los tiene todos.

Estos muchachos están prácticamente en todas partes ... dispersando lentamente sus ventajas técnicas en la web y en el escritorio por igual. Solo están obteniendo más grande y mejor mientras hablamos y contratan a los mejores ingenieros (incluso lograron robar a Phil Haack de Microsoft ... imagínense).

    
respondido por el A-Dubb 19.09.2012 - 04:50
4

Una razón adicional que puede estar atrayendo desarrolladores adicionales a GitHub es que las herramientas para desarrolladores están comenzando a utilizar git, y las plataformas como Eclipse ahora tienen soporte para Git integrado (se aplica a los paquetes para Java, C ++ Developers, etc.) ), haciendo que tome menos pasos para subir tu proyecto a GitHub.

    
respondido por el Jessica Brown 15.09.2012 - 02:21
-1

Para ser honesto, lo más importante de Git para mí cuando lo veo: 1. Network Graph o Debo llamar a la Historia (también comentando) 2. Rama y solicitud de extracción 3. Es más poderoso, realmente, diría que se siente como si tuviera una secretaria que se ocupa de todo mi trabajo, y puedo decirle a ese momento que escriba algo para mí, el cambio, ¡todo! 4. Es fácil de revertir

Sólo eso. Se siente sexy usándolo

    
respondido por el Benyamin Limanto 21.06.2016 - 06:39

Lea otras preguntas en las etiquetas