Androide

Cómo configurar un servidor git

Cómo instalar tu propio servidor GIT en Windows

Cómo instalar tu propio servidor GIT en Windows

Tabla de contenido:

Anonim

Cuando se trata de alojamiento Git, tiene una serie de opciones disponibles. GitHub, Gitlab y Bitbucket son soluciones populares, pero ejecutar su propio servidor Git es una alternativa que vale la pena considerar.

La configuración de un servidor Git le permite crear repositorios privados sin las restricciones de los planes gratuitos de los proveedores.

En esta guía, explicamos cómo configurar un servidor Git simple en Linux. Esta configuración es buena si tiene pocos repositorios y los colaboradores son expertos en tecnología. De lo contrario, debería considerar instalar una aplicación git autohospedada como Gitea, Gogs o Gitlab.

El servidor Git se puede configurar en cualquier máquina remota de Linux o incluso en su sistema local.

Configurar el servidor Git

El primer paso es instalar Git en su servidor.

sudo apt update && sudo apt install git

Para instalar el paquete git en servidores CentOS, escriba:

sudo yum install git

A continuación, cree un nuevo usuario que gestionará los repositorios de Git:

sudo useradd -r -m -U -d /home/git -s /bin/bash git

El directorio de inicio del usuario se establece en /home/git . Todos los repositorios se almacenarán en este directorio. No configuramos una contraseña para el usuario "git", el inicio de sesión solo será posible con las teclas ssh.

Cambie al usuario "git" usando el comando su :

sudo su - git

Ejecute los siguientes comandos para crear el directorio SSH y establecer los permisos correctos:

mkdir -p ~/.ssh && chmod 0700 ~/.ssh

Cree un archivo llamado ~/.ssh/authorized_keys que contendrá las claves SSH de los usuarios autorizados:

touch ~/.ssh/authorized_keys && chmod 0600 ~/.ssh/authorized_keys

Eso es. La configuración del servidor está completa. Ahora estás listo para crear tu primer repositorio de Git.

Ejecute el siguiente comando para iniciar un nuevo repositorio vacío:

git init --bare ~/projectname.git

Puede nombrar el directorio como desee. Lo importante es crear el repositorio bajo el directorio de inicio del usuario "git".

Initialized empty Git repository in /home/git/projectname.git/

Configuración del repositorio local de Git

Para poder enviar los cambios de git locales al servidor de Git, deberá agregar su clave pública SSH de usuario local al archivo de claves authorized_keys del usuario "git" remoto.

cat ~/.ssh/id_rsa.pub

La salida debería ser similar a la siguiente:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDd/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== [email protected]

Para generar un nuevo par de claves SSH, use el siguiente comando:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Copie la salida del comando cat anterior y regrese a la consola del servidor Git.

En el servidor, abra su editor de texto y pegue la clave pública que copió de su máquina local en el archivo ~/.ssh/authorized_keys :

sudo nano /home/git/.ssh/authorized_keys

Todo el texto de la clave pública debe estar en una sola línea.

Asumimos que el paquete Git ya está instalado en su máquina local. De lo contrario, instálelo de la misma manera que se explicó en las secciones anteriores.

cd /path/to/local/project

Inicializar un repositorio git:

git init.

El último paso es agregar el control remoto git a su repositorio local:

git remote add origin git@git_server_ip:projectname.git

No olvide reemplazar git_server_ip con el nombre de host o la dirección IP del servidor Git.

Para verificar que todo esté configurado correctamente, cree un archivo de prueba:

touch test_file

Agregue los cambios al área de preparación:

git add.

Cometer los cambios:

git commit -m "descriptive message"

Empuje los cambios del repositorio local a un repositorio remoto:

git push -u origin master

Si todo está configurado correctamente, la salida debería verse así:

Counting objects: 3, done. Writing objects: 100% (3/3), 218 bytes | 218.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0) To git_server_ip:projectname.git * master -> master Branch 'master' set up to track remote branch 'master' from 'origin'.

Para agregar un nuevo colaborador, simplemente copie su clave SSH pública en el archivo ~/.ssh/authorized_keys "git".

Puede seguir los mismos pasos para crear nuevos repositorios. Es importante tener en cuenta que el repositorio remoto debe existir antes de agregar el git remote a su repositorio local.

Conclusión

En este tutorial, le mostramos cómo configurar su propio servidor Git privado y crear repositorios.