Al iniciar un nuevo proyecto, una de las primeras cosas que tendrá que hacer es crear un nuevo repositorio de Git. Esto no solo lo ayuda a compartir el proyecto con compañeros de trabajo o públicamente, sino que también es una excelente manera de realizar un seguimiento de las actualizaciones de un proyecto joven que seguramente pasará por cambios significativos en sus inicios. Con un historial completo de esos cambios y funciones útiles como las ramas, puede probar más fácilmente diferentes diseños / implementaciones para el proyecto sin perder el trabajo anterior.
Como con cualquier cosa en Git, hay algunas formas de hacer lo que queremos, dependiendo de lo que necesites. En este artículo, mostraremos algunas formas de crear un nuevo repositorio.
Crear un repositorio desde cero
Contenido
Para comenzar este nuevo repositorio, querrá usar el init
mando. Para hacer esto, vaya al directorio de su proyecto y escriba lo siguiente:
$ git init
Initialized empty Git repository in /Users/scott/projects/my-new-project/.git/
Esto se puede hacer en cualquier momento en su proyecto, ya haya archivos allí o no. Una vez que haya agregado algunos archivos y sienta que está en un punto en el que debe enviar su código, puede usar el add
comando para agregar sus archivos al nuevo repositorio:
$ git add .
Esto colocará los archivos en su directorio de trabajo actual para la próxima confirmación. Después de preparar nuestros archivos, podemos verificar que están listos para comprometerse usando el status
mando:
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: index.js
new file: package.json
Finalmente, puede enviar los archivos al nuevo repositorio usando commit
:
$ git commit -am "Initial commit"
[master (root-commit) 37a82f5] Initial commit
2 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 index.js
create mode 100644 package.json
Aquí también usamos las banderas -a
y -m
, que hacen lo siguiente:
-a
: Confirma todos los archivos almacenados-m
: Use la siguiente cadena como mensaje de confirmación
Para verificar
Creación de un repositorio para un proyecto existente
Crear un repositorio para un proyecto existente es prácticamente el mismo proceso que crear un repositorio para un nuevo proyecto. Al igual que en la última sección, querrá ejecutar los mismos comandos generales:
Te puede interesar:Git: diferencia entre ‘git fetch’ y ‘git pull’$ git init
Initialized empty Git repository in /Users/scott/projects/my-new-project/.git/
$ git add .
$ git commit -am "Initial commit"
[master (root-commit) 37a82f5] Initial commit
2 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 index.js
create mode 100644 package.json
Tenga en cuenta que el git add .
El comando agregará todos los archivos en el directorio de trabajo actual, incluidos los de los subdirectorios. Sin embargo, también agregará algunos archivos o directorios que quizás no desee, como node_modules
para un proyecto de Node.js. Para evitar incluir archivos / directorios no deseados como este, debe crear y confirmar un .gitignore
archivo.
Haciendo una pequeña copia de seguridad, nuestros comandos para crear un repositorio para un proyecto existente pueden parecerse más a esto:
$ git init
Initialized empty Git repository in /Users/scott/projects/my-new-project/.git/
$ echo "node_modules/" > .gitignore
$ echo "package-lock.json" >> .gitignore
$ git add .
Ahora, cuando estos elementos «ignorados» están presentes en su proyecto, no necesita preocuparse por organizarlos y comprometerlos accidentalmente. Por ejemplo:
Te puede interesar:Git: Switch Branch$ npm install
$ ls -l
total 40
-rw-r--r-- 1 scott staff 0 Sep 16 15:15 index.js
drwxr-xr-x 4 scott staff 136 Sep 16 15:27 lib
drwxr-xr-x 52 scott staff 1768 Sep 16 15:32 node_modules
-rw-r--r-- 1 scott staff 14233 Sep 16 15:32 package-lock.json
-rw-r--r-- 1 scott staff 362 Sep 16 15:32 package.json
$ git add .
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: .gitignore
new file: index.js
new file: lib/api.js
new file: lib/db.js
new file: package.json
$ git commit -am "Initial commit"
[master (root-commit) 9646a88] Initial commit
5 files changed, 19 insertions(+)
create mode 100644 .gitignore
create mode 100644 index.js
create mode 100644 lib/api.js
create mode 100644 lib/db.js
create mode 100644 package.json
Tenga en cuenta que nuestro archivo ignorado (package-lock.json) y directorio (node_modules) no se incluyen en la preparación, incluso después de ejecutar git add .
, o el compromiso.
Nota: Utilizando .gitignore
no solo se recomienda al crear un repositorio para un proyecto existente, sino que lo hacemos referencia aquí porque es más probable que lo necesite para un proyecto existente, ya que los proyectos más maduros tienden a acumular archivos que no deben ser rastreados o compartidos entre usuarios .
Clonación de un proyecto existente
Aunque técnicamente no está creando un nuevo repositorio, en este caso de uso puede clonar uno existente, evitando que necesite git init
uno a ti mismo. Esto es muy común cuando necesita realizar actualizaciones en un proyecto existente, o tal vez si desea clonar un proyecto esqueleto para ayudarlo a comenzar.
Para clonar un repositorio, querrá usar el clone
mando:
$ git clone <repo-url>
Esto copiará todo el contenido del repositorio a su directorio de trabajo actual bajo el nombre del repositorio. Por ejemplo:
$ git clone [email protected]:scottwrobinson/twentyjs.git
Cloning into 'twentyjs'...
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.
$ ls -l
total 0
drwxr-xr-x 9 scott staff 306 Sep 16 15:55 twentyjs
Hay una serie de otras opciones y casos de uso para este comando, pero no están en el alcance de este artículo, por lo que no los cubriremos aquí. Para obtener más información, consulte el artículo Git: Clone a Repository.
Te puede interesar:Ejecución de comandos de shell con Node.js