Crear una copia de un repository remoto en Git con git clone
Lección 15 / 53
Git Guía Git Guía Git español
git clone es el comando que se utiliza para crear una copia o clonación de un repository ya existente, en particular disponible a través de una conexión de red.
La clonación de un repository remoto en la máquina local es una operación única; una vez realizada la copia local, ya no es necesario ejecutar git clone (veremos más adelante cómo recuperar los nuevos cambios subidos por otros).
En su versión más simple, el comando git clone requiere que se proporcione la URL del repository:
git clone <URL>
La URL se puede indicar en diferentes formatos, dependiendo del protocolo ofrecido por el servidor que aloja el repository remoto, en particular:
- SSH - ssh://[user@]host.xz[:port]/path/to/repo.git/
- HTTP - http[s]://host.xz[:port]/path/to/repo.git/
- GIT - git://host.xz[:port]/path/to/repo.git/
En general, dependiendo del servidor que aloje el repository remoto, estarán disponibles uno o más protocolos y deberá autenticarse o proporcionar las credenciales necesarias.
A modo de ejemplo, si consideramos un repository alojado en el famoso servicio GitHub es posible:
- clonar un repository público con la url HTTP, p.e. git clone https://github.com/php/php-src.git: de esta manera se obtiene una copia "read only", y no será posible enviar eventuales cambios
- clonar un repository privado con la url HTTP: en este caso se pedirá añadir el propio username y la propia password, será posible "escribir" en el repository remoto
- clonar un repository privado con la url GIT: en este caso será necesario haber configurado primero en GitHub las propias credenciales SSH (claves públicas), obviamente será posible "escribir" en el repository remoto
Una vez completado, el comando git clone habrá creado en el directory actual un directory que aloja el clon del repository remoto y habrá creado una conexión llamada origin que apunta al repository remoto original. Esa conexión será utilizada por otros comandos para enviar y recibir nuevos cambios desde el repository remoto.
Algunos interruptores útiles para usar con el comando git clone son:
- clonar es una específica directory (útil también para dar un específico nombre al propio clone locale)
git clone <URL> <DIRECTORY>
- clonar solo una parte de la history de los commit - en este caso la copia locale se llama shallow clone - por ejemplo solo los últimos 10 commit:
git clone --depth=10 <URL>
- clonar solo un específico branch presente en el repository remoto:
git clone --single-branch --branch <NAME> <URL>
Anterior
14 Inicializar un nuevo..Siguiente
16 Configurar las opcio..