Federico Mazzei / Crear un repositorio git en servidor propio

Created Fri, 15 Sep 2017 12:17:37 +0000 Modified Fri, 15 Sep 2017 12:17:37 +0000

Para crear un repositorio git en servidor propio hay que seguir algunos pasos muy simples, pero deben hacerse en esta secuencia sin alterar nada.

Servidor

Primero entramos al servidor una vez dentro ejecutamos lo siguiente:

<pre class="wp-block-preformatted">cd ~<br></br>mkdir repositorio.git<br></br>cd repositorio.git<br></br>git --bare init<br></br>git config core.sharedRepository true

La primer linea cd ~ nos lleva a la home del usuario, es decir que si el usuario que está logueado es fideo la home sería /home/fideo/ para corroborar esto pueden ejecutar pwd y les mostrará donde están parados luego de ejecutar cd ~
La segunda linea crea un directorio llamado repositorio.git el cual tendrá la información que git necesita para llevar nuestro log de archivos.
La tercer linea ingresa al directorio.
La cuarta linea le decimos a git inicialize ese directorio como un repositorio git para realizar los pull y push de ese repositorio.
La quinta y última linea de esta parte se configura en true la variable core.sharedRepository informandole a git que es un repositorio compartido.

#### Local

Una vez terminado lo anterior vamos a la máquina local donde tenemos el código a subir.

<pre class="wp-block-preformatted">mkdir repositorio<br></br>cd repositorio<br></br>git init<br></br>git add *<br></br>git commit -m "Initial import"<br></br>git remote add origin git+ssh://user@server/home/user/git/repositorio.git<br></br>git push origin master

Para poder bajar / clonar con git ese ropositorio solo tenemos que ejecutar este comando

<pre class="wp-block-preformatted">git clone git+ssh://user@server/home/user/git/repositorio.git

Algunas de las cositas que pueden servir para usar al crear un repositorio git en servidor propio.

<pre class="wp-block-preformatted">git pull<br></br>git status<br></br>git log archivo<br></br>git diff 84de2396c3f0fcdc9994028b5bf5f0005c763496 3c933adaf627bc8a58cfefb62ff0f2d5df640673 archivo

Eliminar archivos

<pre class="wp-block-preformatted">git rm archivo<br></br>git commit -m "borro archivo" archivo<br></br>git push

Revertir cambios realizados en un archivo específico el cual no hayamos realizado commit

<pre class="wp-block-preformatted">git checkout -- file

Deshacer el último commit no enviado con push

<pre class="wp-block-preformatted">$ git reset --hard HEAD~1

Revertir el último cambiado, al que se le ha hecho push

<pre class="wp-block-preformatted">git push -f origin last_commit:branch

Cambiando de ramas

Es posible que tengamos varias ramas por ejemplo production (prod) y master. Si estamos en master y queremos pasar los cambios a production se puede hacer lo siguiente:

<pre class="wp-block-preformatted">git branch origin/prod # en caso de no tenerla se crea la rama origin/prod<br></br>git branch -a # comprobar que realmente estamos en master<br></br>git branch --track prod origin/prod # si no lo tenemos ya asocia prod a origin/prod<br></br>git checkout prod # cambiamos a la rama prod<br></br>git merge master # se merguean los cambios desde master a prod<br></br>git push # se suben los cambios

Mas documentación sobre git

Documentación oficial
GitHub
Mas información sobre git en este sitio

Crear un repositorio git en servidor propio