Git parte I – inicio

Git

Git es un potente software para el control de versiones diseñado por Linus Torvalds con el objetivo de mantener un control de versiones en aquellas aplicaciones que contienen un gran número de archivos de código fuente.

Este tipo de proyectos conllevan un gran número de cambios en las versiones de su código, por lo que permite coordinar y facilitar el trabajo al equipo de desarrolladores. Se puede utilizar para cualquier propósito, un sencillo script en Bash, un programa realizado en cualquier lenguaje, un desarrollo web, … del cual se quieran mantener los cambios de versiones para unificar el trabajo, dar marcha atrás a algún cambio aplicado o trabajar en distintas ramas para una posterior fusión con la principal, entre muchos otros fines.

Como ejemplo de uso cabe destacar al grupo de programación del núcleo de Linux, el cual hace uso de este software para su mantenimiento/desarrollo. Más información en la Wikipedia pinchando aquí.

Para todo programador es fundamental saber trabajar con este tipo de herramientas, las cuales se están imponiendo como un estándar en el trabajo diario de muchos profesionales y empresas, sobre todo si se trabaja en un equipo de desarrollo con más personas. Almacenar el código con un repositorio remoto, que puede ser público o privado, es posible haciendo uso de esta potente herramienta, permitiendo compartir el código con más personas  o tener tu propio repositorio personal al que acceder estés donde estés.

A lo largo de este conjunto de entradas se explicarán los comandos básicos para trabajar tanto en la máquina local como en un repositorio remoto (GitHub o BitBucket). Empecemos!!!

 


Partimos de un directorio con dos archivos, index.php y style.css, con el siguiente contenido (tranquilo que en estas entradas no vamos a aprender a programar):

index.php

<!DOCTYPE html>
<html>
        <head>
          <title>Formulario PHP</title>
      <link type='text/css' rel='stylesheet' href='style.css'/>
        </head>
        <body>
        <div id="main">
                <p>Prueba de formulario en PHP</p>

                <form action="index.php" method="GET" >
                    Categoria: <input type="text" name="categoria" />
                    Producto:
                        <select name="producto" >
                            <option value="Polo"> Polo </option>
                            <option value="Quiksilver"> Quiksilver </option>
                            <option value="Tommy"> Tommy </option>
                        </select >
                        <input type="submit" value="Enviar" />
                </form >
        <?php
            if (isset($_GET['categoria'])){
            $categoria = $_GET['categoria'];
            $producto = $_GET['producto'];
            echo "<p>Seleccionó el producto " . $producto . " de la categor&iacute;a ". $categoria . "</p>";
            }
        ?>
        </div>
    </body>
</html>

style.css

html, body {
        margin: 0;
        padding: 0;
}

#main {
        margin: 0 auto;
        padding: 20px 15px;
}

#main p {
        font-weight: bold;
}

 


Iniciar un proyecto

Dentro del directorio en el que vayamos a tener el código de nuestra aplicación ejecutamos el siguiente comando:

# git init

Se mostrará el siguiente mensaje:

Initialized empty Git repository in /path_directorio/.git/

Si todo ha ido bien, se creará el archivo oculto .git:

# ls -altr
total 20
drwxr-xr-x 12 www-data www-data 4096 abr 23 13:51 ..
-rw-r--r-- 1 root root 136 abr 23 14:01 style.css
-rw-r--r-- 1 root root 1000 abr 23 14:02 index.php
drwxr-xr-x 3 root root 4096 abr 23 14:02 .
drwxr-xr-x 7 root root 4096 abr 23 14:02 .git

 


Ver el estado de los archivos

En estos momentos aún no tenemos ningún archivo agregado al repositorio, por lo que estarán todos listos para ser almacenados.

# git status
On branch master

Initial commit

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        index.php
        style.css

nothing added to commit but untracked files present (use "git add" to track)

 


Agregar archivos al repositorio

Para agregar todos los archivos al repositorio usaremos el siguiente comando.

# git add -A

O el comando:

# git add .

Se indican los archivos que han sido agregados al repositorio:

# git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

        new file:   index.php
        new file:   style.css

Para agregar un archivo en concreto:

# git add nombre_archivo

Por ejemplo, vamos a modificar el archivo .css y agregarlo al repositorio, por ejemplo especificando el tamaño de letra (font-size):

html, body {
        margin: 0;
        padding: 0;
        font-size: 18px;
}

Si comprobamos el estado de los archivos podemos ver qué archivo ha sido modificado, pendiente de ser actualizado en el repositorio:

# git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

        new file:   index.php
        new file:   style.css

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   style.css

Agregamos el archivo en concreto:

# git add style.css

Y ya estarían todos actualizados:

# git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

        new file:   index.php
        new file:   style.css

 


Con estos comandos iniciamos nuestro primer repositorio con Git en el directorio en donde tengamos nuestro proyecto. En las siguientes entradas veremos como crear el primer punto de partida o snapshot y la configuración inicial del repositorio.

Aaaadios!!!!