Git: clonar un repositorio

    Uno de los muchos beneficios de usar software de control de versiones como Git es la facilidad con la que puede copiar todo el contenido y el historial de un proyecto con un simple comando en su terminal. Una vez en su máquina local, puede realizar los cambios / adiciones / eliminaciones que desee y devolverlo al repositorio de origen.

    En este breve artículo veremos cómo puede clonar un repositorio de Git desde una fuente remota (o local).

    Repositorios de clonación

    Para clonar un repositorio remoto, querrá usar el git clone comando, que generalmente se usa de esta manera:

    $ git clone <repo-url>
    

    Esto clonará el repositorio en su directorio de trabajo actual usando el nombre del repositorio como directorio de destino. Para clonarlo en un directorio diferente, puede especificar uno como segundo parámetro para clone:

    $ git clone <repo-url> <directory>
    

    Un ejemplo de este comando para un repositorio público de GitHub se vería así:

    $ git clone [email protected]:scottwrobinson/twentyjs.git twentyjs-clone
    Cloning into 'twentyjs-clone'...
    remote: Enumerating objects: 48, done.
    remote: Total 48 (delta 0), reused 0 (delta 0), pack-reused 48
    Receiving objects: 100% (48/48), 9.35 KiB | 0 bytes/s, done.
    Resolving deltas: 100% (22/22), done.
    

    Como todos los comandos de Git, hay bastantes banderas que se pueden usar aquí. A continuación se muestran algunos de los más utilizados para git clone:

    • -l o --local: Esto le dice a Git que el repositorio que estamos clonando está en nuestra máquina local, que pasa por alto el mecanismo de transporte normal «consciente de git». Los archivos debajo .git/objects/ también están vinculados al repositorio original, lo que ahorra espacio en disco. Esta marca no es necesaria si el repositorio se especifica como una ruta local, pero debe especificarse explícitamente si el repositorio local se especifica como una URL.
    • --no-tags: No descargue ninguna de las etiquetas del repositorio. Esta configuración también se guarda para que los siguientes git pull y git fetch las llamadas no descargan etiquetas.
    • -o <name> o --origin <name>: Cambie el nombre del repositorio remoto para este clon de «origen» a lo que especifique <name>.
    • -n o --no-checkout: No revise HEAD después de la clonación
    • --bare: Coloca los archivos de <directory>/.git directamente en la ubicación especificada por <directory>. Esto es bueno para cuando necesita una copia del repositorio, pero no necesita trabajar directamente con él para propósitos de desarrollo.

    Recuerde, solo mencioné los indicadores más utilizados específicos para el clone mando. Hay bastantes más, que puede consultar utilizando el git help clone comando en su terminal.

    Clonación de repositorios locales

    Como probablemente haya adivinado por algunos de los indicadores mencionados anteriormente, también puede clonar repositorios que ya están en su máquina local. Esto se hace especificando la ruta del directorio del repositorio en lugar de una URL. Aquí hay un ejemplo de cómo se vería:

    $ git clone /Users/scott/sandbox/twentyjs /Users/scott/projects/twentyjs
    

    Con este comando el twentyjs El proyecto Git se copiaría en el nuevo projects/twentyjs directorio. Puede omitir la ruta de destino, pero tenga en cuenta que debe estar en un directorio de trabajo diferente al que reside o debe darle un nombre diferente para evitar conflictos.

    Otros protocolos

    Hay varias formas de especificar qué repositorio desea clonar, ya sea que esté clonando un repositorio local o remoto. Las diferencias están en el protocolo que especifique, que también debe ser compatible con el servidor que aloja el repositorio. Al elegir un protocolo, asegúrese de considerar los requisitos de seguridad y utilice los protocolos más seguros cuando sea necesario o pueda.

    A continuación se muestran algunos ejemplos de protocolos que son compatibles de forma nativa con Git:

    • git://example.com[:port]/path/to/repo/project.git
    • ssh://[[email protected]]example.com[:port]/path/to/repo/project.git
    • http[s]://example.com[:port]/path/to/repo/project.git
    • ftp[s]://example.com[:port]/path/to/repo/project.git (no recomendado debido a obsolescencia)

    También se admiten otros formularios de URL, según el protocolo que se utilice, como este para SSH:

    • [email protected]:path/to/repo/project.git

    En cuanto a los repositorios locales, puede utilizar uno de los siguientes formularios:

    • /path/to/repo/project.git
    • file:///path/to/repo/project.git
    Rate this post
    Etiquetas:

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *