Creando un proyecto para compartir con GIT
Código: Seleccionar todo
cd /var/www/html
Código: Seleccionar todo
mkdir mi-proyecto
Código: Seleccionar todo
cd mi-proyecto
Código: Seleccionar todo
touch index.html
<!DOCTYPE html>
<html>
<head>
<title>Mi primer proyecto GIT</title>
</head>
<body>
<h1> Aprendiendo GIT </h1>
</body>
</html>
Cambiemos los permisos de nuestro proyecto en nuestro Apache2
Código: Seleccionar todo
chmod -R 777 /var/www/html/mi-proyecto/
Código: Seleccionar todo
chown -R www-data:www-data /var/www/html/mi-proyecto/
Ahora es hora de Inicializar nuestro proyecto recién creado.
Inicializando un repositorio en un directorio existente
Cuando ya existen nuestro proyectos y deseamos inicializar un repositorio git sólo debemos utilizar un comando en particular, es decir git init con el cual generamos nuestros repositorios,
Fundamental ingresar primero al proyecto o directorio
Código: Seleccionar todo
cd /var/www/html/mi-proyecto
Generamos nuestro repositorio
Código: Seleccionar todo
git init
Initialized empty Git repository in /var/www/html/mi-proyecto/.git/
Lo cual significa que nuestro repositorio fue generado e inicializado
Vamos a verificar que sucedió
Código: Seleccionar todo
cd /var/www/html/mi-proyecto
Código: Seleccionar todo
ls -la
Observa que un nuevo sub directorio fue creado, es decir .git
Dentro del directorio generado hay algunos archivos muy importantes, verifiquemos cuales son:
Código: Seleccionar todo
cd /var/www/html/mi-proyecto/.git
Observaremos algo similar alo siguiente:
Código: Seleccionar todo
drwxr-xr-x 7 root root 4096 jun 24 08:07 .
drwxrwxrwx 3 www-data www-data 4096 jun 24 08:07 ..
drwxr-xr-x 2 root root 4096 jun 24 08:07 branches
-rw-r--r-- 1 root root 92 jun 24 08:07 config
-rw-r--r-- 1 root root 73 jun 24 08:07 description
-rw-r--r-- 1 root root 23 jun 24 08:07 HEAD
drwxr-xr-x 2 root root 4096 jun 24 08:07 hooks
drwxr-xr-x 2 root root 4096 jun 24 08:07 info
drwxr-xr-x 4 root root 4096 jun 24 08:07 objects
drwxr-xr-x 4 root root 4096 jun 24 08:07 refs
La carpeta 'branches' no se utiliza en las últimas versiones de Git, y el archivo 'description' se utiliza solo en el programa GitWeb; por lo que no necesitas preocuparte por ellos. El archivo 'config' contiene las opciones de configuración específicas de este proyecto concreto, y la carpeta 'info' guarda un archivo global de exclusión con los patrones a ignorar además de los presentes en el archivo .gitignore. La carpeta 'hooks' contiene tus scripts,
Esto nos deja con cuatro entradas importantes: los archivos 'HEAD' e 'index' y las carpetas 'objects' y 'refs'. Estos elementos forman el núcleo de Git. La carpeta 'objects' guarda el contenido de tu base de datos, la carpeta 'refs' guarda los apuntadores a las confirmaciones de cambios (commits), el archivo 'HEAD' apunta a la rama que tengas activa (checked out) en este momento, y el archivo 'index' es donde Git almacena la información sobre tu área de preparación (staging area).
Ahora explicaré como clonar nuestro proyecto recién creado, recuerden que esto se explicó en otro post, Click Aquí para leer.
Para clonar en git sólo debemos aprendernos el siguiente comando git clone , como ves es muy facil.
Si deseamos clonar un proyecto existente debe estar publicado, con una URL con acceso al publico.
Supongamos que alguien desea clonar nuestro proyecto recientemente creado, se supone que tu servicio apache2
lo permite visualizar en red (Compartido), imaginemos que tu dirección IP es la siguiente 10.10.10.10
Código: Seleccionar todo
git clone http://10.10.10.10/mi-proyecto
Para clonar a modo local sería de la siguiente manera
Código: Seleccionar todo
clone /var/www/html/mi-proyecto/
Otra manera de clonar es la siguiente
Código: Seleccionar todo
git clone http://10.10.10.10/mi-proyecto nuevo-nombre
Git te permite usar distintos protocolos de transferencia. El ejemplo anterior usa el protocolo http://, pero también te puedes encontrar con http(s):// o usuario@servidor:/ruta.git, que utiliza el protocolo de transferencia SSH.
partiendo de los ejemplos anteriores sería:
Código: Seleccionar todo
git clone ssh://[email protected]:/var/www/html/mi-proyecto/