En este punto tu ya deberías tener instalado Git en tu terminal, ya sea Linux, Mac, o cualquier otra.
Aquí vamos a aprender a hacer un proyecto básico en Git para que podamos ver los comandos básicos y empezar a familiarizarnos con Git. Empecemos!!
Creación de un proyecto
$ mkdir curso-de-git
$ cd curso-de-git
Creamos un fichero hola.php
que muestre Hola Mundo
<?phpecho"Hola Mundo\n";
Para crear un nuevo repositorio se usa la orden git init
$ git init
Initialized empty Git repository in/home/cc0gobas/git/curso-de-git/.git/
Vamos a almacenar el archivo que hemos creado en el repositorio para poder trabajar, después explicaremos para qué sirve cada orden.
$ git add hola.php
$ git commit -m "Creación del proyecto"
[master (root-commit) e19f2c1] Creación del proyecto
1filechanged, 2 insertions(+)
createmode100644 hola.php
Con la orden git status
podemos ver en qué estado se encuentran los archivos de nuestro repositorio.
$ git status
# On branch master
nothing to commit (working directory clean)
Si modificamos el archivo hola.php:
<?php
@print"Hola {$argv[1]}\n";
Y volvemos a comprobar el estado del repositorio:
$ git status
# On branch master
# Changes not staged for commit:
# (use"git add <file>..."toupdate what will be committed)
# (use"git checkout -- <file>..."to discard changes in working direct
ory)
#
# modified: hola.php
#
no changes added tocommit (use"git add"and/or"git commit -a")
Con la orden git add
indicamos a git que prepare los cambios para que sean almacenados.
$ git add hola.php
$ git status
# On branch master# Changes to be committed:# (use "git reset HEAD <file>..." to unstage)## modified: hola.php#
Con la orden git commit
confirmamos los cambios definitivamente, lo que hace que se guarden permanentemente en nuestro repositorio.
$ git commit -m "Parametrización del programa"
[master efc252e] Parametrización del programa
1filechanged, 1 insertion(+), 1 deletion(-)
$ git status
# On branch masternothingtocommit (working directory clean)
Modificamos nuestra aplicación para que soporte un parámetro por defecto y añadimos los cambios.
<?php
$nombre = isset($argv[1]) ? $argv[1] : "Mundo";
@print "Hola, {$nombre}\n";
git add hola.php
Volvemos a modificar el programa para indicar con un comentario lo que hemos hecho.
<?php
// El nombre por defecto es Mundo
$nombre = isset($argv[1]) ? $argv[1] : "Mundo";
@print "Hola, {$nombre}\n";
Y vemos el estado en el que está el repositorio
$ git status
# On branch master# Changes to be committed:# (use "git reset HEAD <file>..." to unstage)## modified: hola.php## Changes not staged for commit:# (use "git add <file>..." to update what will be committed)# (use "git checkout -- <file>..." to discard changes in working direct
ory)
## modified: hola.php#
Almacenamos los cambios por separado:
$ git commit -m "Se añade un parámetro por defecto"
[master3283e0d] Se añade un parámetro por defecto
1filechanged, 2 insertions(+), 1 deletion(-)
$ git status
# On branch master
# Changes not staged forcommit:
# (use"git add <file>..."toupdate what will be committed)
# (use"git checkout -- <file>..."to discard changes in working direct
ory)
#
# modified: hola.php
#
no changes added tocommit (use"git add"and/or"git commit -a")
$ git add .
$ git status
# On branch master
# Changes to be committed:
# (use"git reset HEAD <file>..."to unstage)
#
# modified: hola.php
#
$ git commit -m "Se añade un comentario al cambio del valor por defecto"
[master fd4da94] Se añade un comentario al cambio del valor por defecto
1filechanged, 1 insertion(+)
El valor “.” despues de git add
indica que se añadan todos los archivos que hayan cambiado.
Gracias amigo me fue muy util,me podiras ayudar con algo?
Al tratar de crear un directorio con “mkdir” me dise “mkdir: cannot create directory ‘proyecto1’: Permission denied” sabes a que se deba?:c