Configuración del servidor Git:
En esta sección, le mostraré cómo configurar un servidor Ubuntu como un servidor Git accesible SSH.
Primero, actualice la caché del repositorio de paquetes APT con el siguiente comando:
La caché del repositorio de paquetes APT debe actualizarse.
Ahora, instale el servidor OpenSSH y Git con el siguiente comando:
$ sudo apt install openssh-server git
Ahora presiona Y y luego presione
El servidor OpenSSH y Git deben estar instalados.
Ahora, cree un nuevo usuario git con el siguiente comando:
$ sudo useradd --create-home --shell / bin / bash git
Todos los repositorios de Git se guardarán en el directorio de inicio del git usuario / home / git.
Ahora, inicie sesión como git usuario con el siguiente comando:
$ sudo su - git
Ahora, crea un nuevo directorio .ssh con el siguiente comando:
$ mkdir .ssh
Ahora, permite solo git que el usuario tenga permisos de lectura, escritura y ejecución en el directorio .ssh / como sigue:
$ chmod 700 .ssh /
Como puede ver, el git el usuario solo tiene permisos de lectura (r), escritura (w), ejecución (x) en el .ssh / directorio.
$ ls -ld .ssh /
Ahora, crea un nuevo archivo vacío .ssh / claves_autorizadas como sigue:
$ toque .ssh / claves_autorizadas
Solo permite leer y escribir en el archivo desde el git usuario de la siguiente manera:
$ chmod 600 .ssh / claves_autorizadas
Como puede ver, solo el git el usuario tiene permisos de lectura (r) y escritura (w) en el archivo .ssh / claves_autorizadas.
En el .ssh / claves_autorizadas archivo, debe agregar la clave pública de los usuarios a los que desea acceder a los repositorios de Git en el servidor de Git.
Agregar la clave pública del cliente al servidor Git:
Para acceder a los repositorios de Git en el servidor de Git, el cliente debe agregar su clave pública al servidor de Git.
El cliente puede generar un par de claves pública-privada de la siguiente manera:
$ ssh-keygen
prensa
prensa
prensa
prensa
Ahora, el cliente puede encontrar su clave pública de la siguiente manera:
$ gato ~ /.ssh / id_rsa.pub
Se debe imprimir la clave pública del cliente. Ahora, el cliente puede enviar esta clave pública al administrador (que administra el servidor Git). Luego, el administrador puede agregar la clave pública al servidor Git. Entonces el cliente puede acceder al servidor Git.
Digamos que el cliente envió su clave pública al administrador del servidor Git. El administrador subió la clave pública a / tmp / shovon-key.pub archivo en el servidor Git.
Ahora, el administrador del servidor Git puede agregar la clave pública del cliente de la siguiente manera:
$ cat / tmp / shovon-clave.pub >> ~ /.ssh / claves_autorizadas
Ahora el .ssh / claves_autorizadas el archivo debe tener la clave pública del cliente.
Creación de repositorios de Git en el servidor:
Los clientes no pueden crear nuevos repositorios de Git en el servidor. El administrador del servidor Git debe crear un repositorio en el servidor. Luego, los clientes pueden clonar, empujar / extraer del repositorio.
Ahora, crea un nuevo repositorio Git vacío testrepo en el servidor Git de la siguiente manera:
$ git init --bare testrepo
Ahora, el cliente solo necesita conocer la dirección IP del servidor Git para acceder a la testrepo Repositorio de Git.
El administrador del servidor Git puede encontrar esta información de la siguiente manera:
$ ip aComo puede ver, la dirección IP del servidor Git es 192.168.21.185. Ahora, el administrador del servidor puede decírselo a los clientes que trabajarán en el proyecto.
Clonación del repositorio de Git desde el servidor:
Una vez que el cliente conoce la dirección IP y el nombre del repositorio de Git, puede clonarlo en su computadora de la siguiente manera:
$ git clon git @ 192.168.21.185: ~ /> testrepo
Ahora, escriba sí y presione
La testrepo El repositorio de Git debe clonarse desde el servidor.
Un nuevo directorio testrepo debe ser creado.
Realización de cambios e inserción de cambios en el servidor Git:
Ahora, el cliente puede agregar confirmaciones al testrepo / repositorio y enviar los cambios al servidor Git.
$ cd testrepo /$ echo "Hola mundo"> prueba.TXT
$ git agregar .
$ git commit -m 'compromiso inicial'
[/ cc [
[cc lang = "bash"]
$ git push origin
Agregar un nuevo miembro del equipo:
Ahora digamos, Beto quiere contribuir al testrepo Repositorio de Git.
Todo lo que tiene que hacer es generar un par de claves SSH y enviar la clave pública al administrador del servidor Git.
$ ssh-keygen
Una vez que el administrador del servidor Git tenga la clave pública de Beto, puede subirlo al servidor Git y agregarlo al .ssh / claves_autorizadas archivo de la siguiente manera:
$ cat / tmp / bob-key.pub >> ~ /.ssh / claves_autorizadas
Ahora, Beto puede clonar el testrepo Repositorio de Git desde el servidor de la siguiente manera:
$ git clon git @ 192.168.21.185: ~ / testrepo
testrepo debe ser clonado.
Un nuevo directorio testrepo debe crearse en la computadora de Bob.
Ahora, Bob puede navegar al repositorio de Git de la siguiente manera:
$ cd testrepo /
Debería encontrar algunas confirmaciones existentes.
$ git log
Ahora, Beto puede hacer su propio trabajo y comprometerse. Luego, envíe los cambios al servidor.
$ echo "Hello World 2" >> prueba.TXT$ git agregar .
$ git commit -m 'Mensaje modificado'
$ git push origin
Ahora, otras personas que trabajan en el mismo repositorio pueden realizar los cambios de la siguiente manera:
$ git pull origin
Debería encontrar las confirmaciones que Beto hecho.
Entonces, así es como configura un servidor Git con SSH en Ubuntu y lo usa. Gracias por leer este artículo.