Me gustaría probar git (alojado en github) para un nuevo proyecto, pero tengo una duda sobre cómo funciona. Estoy trabajando con otro chico, ¿necesitamos tener dos tenedores del proyecto y luego fusionarlos cada vez que uno de nosotros haga un cambio al código o es posible trabajar en parejas en un solo origen?¿Github requiere que cada committer tenga su propia bifurcación del proyecto?
Respuesta
Es posible tener tantos committers adicionales (llamados colaboradores en términos de GitHub) en un único proyecto como lo desee. Sin embargo, el número máximo depende del plan de precios. Tenga en cuenta que los repositorios públicos pueden tener un número ilimitado de colaboradores.
En cuanto a Git: cualquiera que tenga acceso de escritura a un repositorio puede presionar.
Con git ambos terminarían con copias locales del repositorio. Cuando presione hacia (o extraiga) del repositorio github, se verá forzado a fusionarse si la otra persona realizó cambios en un archivo al que también realizó cambios desde el último push/pull. No es necesario que ambos tengan su propio tenedor.
Esto es lo que sucede generalmente con git, pero la siguiente respuesta dice que github no permite tener ningún colaborador para el proyecto – mariosangiorgio
Nunca he usado github, por lo que puedo comentar su estructura de precios específica. Yo organizo los repositorios yo mismo. – Donnie
Los proyectos públicos permiten colaboradores ilimitados. (Perdón por hacer doble comentario aquí, pero la desinformación se difunde un poco.) –
En primer lugar, permítanme decir que no tengo mucha experiencia con git. Dicho eso, déjame llegar a mi respuesta.
La respuesta breve sería: sí, en cierto modo, así será. Pero no tiene que ser tanto como un problema como tú dices.
Supongo que usted conoce SVN por alguna razón, pero avíseme si no lo hace, e intentaré escribir las cosas desde un punto de vista diferente.
La manera SVN, la forma centralizada, es que hay un repositorio y todos tienen una copia de trabajo. En la copia de trabajo uno puede hacer cambios, y luego los cambios pueden ser enviados al repositorio. Si dos personas han estado haciendo cambios en sus copias de trabajo al mismo tiempo, es posible que deba fusionar los cambios, pero si este no es el caso, todo será automático.
Git está descentralizado. Esto se logra no solo teniendo un único repositorio, sino que cada usuario tiene su repositorio o repositorio. Por lo general, el repositorio está acompañado por una copia de trabajo (con la copia de trabajo simplemente como los archivos normales y el depósito alojado en .git
. Realiza cambios en su copia de trabajo y luego los confía en su repositorio. Luego, si decide que el Los cambios deben ser visibles para el público. Puede enviar los cambios a su repositorio al repositorio público.
(Tenga en cuenta que el repositorio público es público solo porque lo trata como tal, Git no conoce diferente. Si está trabajando en un única característica con su compañero de trabajo Bob, puede enviarla al repositorio de Bob en su lugar y solo cuando los dos terminen, empújelo al repositorio público, o no lo haga en absoluto, si es solo su modificación privada)
Básicamente, con el uso típico, habrá una fusión más problemática con git que con SVN. Afortunadamente, la fusión de git también es mejor, por lo que tendrás que hacer menos tú mismo (o eso me han dicho). Sin embargo, no debería haber demasiados conflictos si no espera meses antes de enviar algo al repositorio público. Mejor aún, si tienes miedo de fusionarte (hay pocas razones para estarlo, pero si lo estás) puedes presionar justo después de cada confirmación, en cuyo caso no harás más fusión que con SVN. Estás renunciando a algo de la flexibilidad de git, pero una gran parte de eso puede volverse a subvertir usando ramas bien (lo que significa automáticamente usar fusión explícita, pero en git, realmente no hay nada de qué temer).
La respuesta breve es no, siempre que use un repositorio público.Dirígete a la sección de administración del repositorio, selecciona el panel "Colaboradores" y agrega tantos usuarios como desees para comprometerse con el repositorio. Todos los usuarios utilizarían la misma dirección desde la que clonar y presionar.
Simplemente recuerde sacar sus cambios antes de presionar los suyos.
- 1. ¿El cliente múltiple debe tener una copia del proyecto o cada cliente tiene su propia copia?
- 2. ¿Cómo cambio el proyecto de GitHub del que bifurqué?
- 3. Superclase y subclase, cada una con su propia interfaz
- 4. ExecuteNonQuery requiere que el comando tenga una transacción
- 5. Proyecto de subversión de bifurcación
- 6. Cuando un compromiso con el control de revisión requiere que un desarrollador cambie su propia configuración
- 7. implementación del proyecto github php
- 8. ¿Por qué cada proceso necesita su propia tabla de páginas?
- 9. ¿Cada proceso tiene su propia tabla de páginas?
- 10. Hackear su propia aplicación
- 11. haciendo su propia función malloc?
- 12. Plugin para usar su propia app.config
- 13. UINavigationController NIB requiere que el propietario del archivo tenga una vista?
- 14. ¿La lista de definición <dl> requiere que cada <dd> tenga la etiqueta <dt>?
- 15. Cómo obtener cierta confirmación del proyecto GitHub
- 16. ¿Por qué Android requiere que el nombre del paquete tenga al menos dos identificadores?
- 17. ¿Cómo se configura setup.py para que tenga la instalación de pip del maestro de GitHub?
- 18. Raven DB - Haga que genere automáticamente su propia clave
- 19. Entity Framework Code First Class con padres e hijos del mismo tipo que su propia clase
- 20. ¿Cómo excluir su propia aplicación del menú Compartir?
- 21. Cómo eliminar su propia aplicación del mercado de Android
- 22. Maven m2e impone su propia configuración del compilador - deshabilitar
- 23. En Android, ¿cada pantalla debe ser su propia Actividad o diseño?
- 24. Actualice una wiki del proyecto GitHub a través de la API de GitHub
- 25. java.lang.Exception frente a su propia excepción
- 26. ¿Tiene un ViewModel su propia lógica?
- 27. Agregar su propia GUI en Paraview
- 28. ¿Cómo configuro la propiedad Settings en XmlTextWriter, para que pueda escribir cada atributo XML en su propia línea?
- 29. proyecto maven requiere sun.javadoc jar
- 30. ¿Agregar proyecto Xcode a github repo?
gracias, realmente me sorprendió que no encontrara esa opción. Necesito tener colaboradores, ¿qué servicio gratuito sugieres usar? – mariosangiorgio
@mariosangiorgio: Hasta donde sé, todos los proveedores de códigos requieren que pague por funciones de administración de proyectos más complejas, como múltiples committers en el mismo repositorio. Después de todo, esta función solo es necesaria para las bases de código de propiedad, y cargar a los desarrolladores de proyectos propietarios es la forma en que esas empresas se mantienen en el negocio. Para las bases de código abiertas, toda esta complicación es completamente innecesaria, ya que puede simplemente extraer y fusionar de los otros desarrolladores. –
Recientemente busqué en la web solo eso, un proveedor de repositorio git gratuito que permite agregar colaboradores y permite repositorios no abiertos. Terminé en assembla.com – Jasper