Como inicializar un repositorio git

by Gastón Ramos

Hace mucho que no escribía, en este caso el tema es como inicializar un repositorio en git, básicamente consta de 2 partes una del lado del servidor y otra en el cliente.

Paso 1: vamos al server y corremos el siguiente script:

./init-repo-server-side.sh proyecto-nuevo

el script va a crear un nuevo repositorio git en /srv/git/proyecto-nuevo.git
con permisos para el user git que vamos a tener que agregar
al server, este usuario sólamente tiene que tener permisos para correr el comando git y nada más.

Script para correr en el server:


#!/bin/sh -x
# init-repo-server-side.sh
PROJECT=$1

REPO=/srv/git/$PROJECT.git

echo Creando $REPO ...

mkdir -p $REPO
cd $REPO
git --bare init
chown -R git:git $REPO
chmod g+w $REPO -R
chmod a+x hooks/post-update
touch git-daemon-export-ok

Paso 2: Luego vamos a la máquina cliente y ejecutamos el siguiente script:

./init-git.sh proyecto-nuevo

Este nos va a crear una carpeta proyecto-nuevo.git que va a contener
una copia de nuestro proyecto, que ya podemos comenzar a utilizar.

Script para correr en el cliente:


#!/bin/sh -x
#./init-git.sh
PROJECT=$1.git

URL=ssh://git@nuestro-server.com/srv/git/$PROJECT

echo Creando $PROJECT

mkdir $PROJECT
cd $PROJECT

git init
touch .gitignore
git add .gitignore
git commit -m "just gitignore"
git remote add origin $URL
git config branch.master.remote origin
git config branch.master.merge refs/heads/master
git push --all
git pull

Esto fue todo, espero que les sea útil.