Primero, miramos qué son las ramas:
Las ramas son fáciles, ocupan menos espacio, le permiten probar nuevas ideas, aislar características y proporcionar flexibilidad en colaboración. El maestro es la rama predeterminada que se crea y, a menudo, se denomina ‘línea principal’ o ‘troncal’ en proyectos empresariales. Esta línea normalmente está construida para entornos de desarrollo y control de calidad y, a veces, para producción. Alternativamente, algunas compañías prefieren hacer un corte RC al maestro que luego se basa en la producción y el maestro continúa construyendo en entornos Dev.
Los bloques en la figura a continuación representan confirmaciones y los números son solo los primeros 5 dígitos del SHA-1 asociado con esa confirmación.
Digamos que necesita experimentar con el algoritmo de búsqueda en su sitio web para hacerlo más rápido. Al mismo tiempo, no desea estropear su implementación actual en caso de que el nuevo experimento vaya hacia el sur. En este caso, crea una nueva rama y trabaja en ella. El maestro aún consta de su código probado original y puede elegir fusionar la rama “revisar búsqueda” en caso de éxito o simplemente descartarlo. Hermosa no es así?
- Cómo aprender qué es la buena arquitectura
- ¿Cuáles son las mejores empresas de outsourcing de desarrollo en Estonia?
- ¿Cuál es la naturaleza del trabajo de los ingenieros de software de sistemas integrados?
- ¿Qué debe hacer cuando la aplicación web principal de su inicio se vuelve inutilizable, pero el código es difícil de mantener?
- ¿Cómo es escribir código para un fondo de cobertura?
Ahora, pasando a repositorios remotos o remotos –
Los controles remotos permiten la colaboración del proyecto. El repositorio remoto es el que está alojado en algún servidor remoto dentro de su organización o github. Esencialmente, no existe una diferencia real entre el repositorio GIT en su máquina local y el repositorio git en el servidor remoto. Por ahora, imagine que el servidor remoto está ejecutando algún software git que le permite comunicarse con múltiples clientes git al mismo tiempo.
Estás en la rama maestra. Si copia sus cambios en el repositorio remoto (operación push), ahora estarán presentes en el repositorio remoto para que otros accedan. Sin embargo, en su local, se crea otra rama llamada como origen / maestro que hace referencia a la rama del servidor remoto. El origen / maestro siempre intenta mantenerse actualizado con la rama del repositorio remoto.
Digamos que algún otro programador de su equipo se compromete con el maestro de sucursal remota, y usted necesita llevar esos cambios a nuestro local (operación de recuperación). Cuando busca, git sincroniza los cambios con su origen / maestro. No lo traerá a su rama maestra, hasta que lo combine.
Además de buscar, hay una operación de extracción que realiza las operaciones de extracción y fusión a la vez.
Tenga en cuenta que el maestro y el origen / maestro no son esencialmente dos ramas diferentes. Son solo dos punteros que apuntan a compromisos diferentes.
Además, tenga en cuenta que su código no es accesible para otros desarrolladores, incluso si se compromete, hasta que lo presione.