Configure o Git Server com SSH no Ubuntu

Configure o Git Server com SSH no Ubuntu
Se você tem um pequeno número de membros da equipe trabalhando em alguns projetos, pode configurar um servidor Git via SSH em seu escritório e trabalhar em projetos como uma equipe com muita facilidade. Você não precisa usar o GitHub ou qualquer outro serviço nesse caso. O servidor Git baseado em SSH é realmente fácil de configurar e usar. Neste artigo, vou mostrar como configurar um servidor Git com SSH no Ubuntu e como usá -lo. Então vamos começar.

Configurando o servidor Git:

Nesta seção, vou mostrar como configurar um servidor Ubuntu como um servidor Git acessível SSH.
Primeiro, atualize o cache do repositório de pacotes apt com o seguinte comando:

$ sudo apt update

O cache do repositório de pacotes apt deve ser atualizado.

Agora, instale o OpenSsh Server e Git com o seguinte comando:

$ sudo apt install OpenSsh-Server Git

Agora, pressione Y e depois pressione Para confirmar a instalação.

O OpenSsh Server e Git devem ser instalados.

Agora, crie um novo usuário git com o seguinte comando:

$ sudo userAdd --create-home-shell /bin /bash git

Todos os repositórios Git serão salvos no diretório inicial do git do utilizador /Home/Git.

Agora, faça o login como o git Usuário com o seguinte comando:

$ sudo su - git

Agora, crie um novo diretório .ssh com o seguinte comando:

$ mkdir .ssh

Agora, permita apenas git Usuário para ler, escrever, executar permissões no diretório .ssh/ do seguinte modo:

$ chmod 700 .ssh/

Como você pode ver, o git O usuário só leu (r), grava (w), execute (x) permissões no .ssh/ diretório.

$ ls -ld .ssh/

Agora, crie um novo arquivo vazio .ssh/autorizado_keys do seguinte modo:

$ touch .ssh/autorizado_keys

Permitir apenas ler e gravar no arquivo do git Usuário da seguinte maneira:

$ chmod 600 .ssh/autorizado_keys

Como você pode ver, apenas o git O usuário leu (r) e grava (w) permissões para o arquivo .ssh/autorizado_keys.

No .ssh/autorizado_keys arquivo, você deve adicionar a chave pública dos usuários a quem deseja acessar os repositórios Git no servidor Git.

Adicionando a chave pública do cliente ao servidor Git:

Para acessar os repositórios Git no servidor Git, o cliente deve adicionar sua chave pública ao servidor Git.

O cliente pode gerar um par de teclas público-privado da seguinte forma:

$ ssh-keygen

Imprensa .

Imprensa .

Imprensa .

Imprensa .

Agora, o cliente pode encontrar sua chave pública da seguinte forma:

$ cat ~//.ssh/id_rsa.bar

A chave pública do cliente deve ser impressa. Agora, o cliente pode enviar esta chave pública para o gerente (que gerencia o servidor Git). O gerente pode então adicionar a chave pública ao servidor Git. Então o cliente pode acessar o servidor Git.

Digamos que o cliente enviou sua chave pública para o Git Server Manager. O gerente enviou a chave pública para /TMP/Shovon-Key.bar arquivo no servidor Git.

Agora, o Git Server Manager pode adicionar a chave pública do cliente da seguinte forma:

$ cat /tmp /shovon-chave.pub >> ~///.ssh/autorizado_keys

Agora o .ssh/autorizado_keys o arquivo deve ter a chave pública do cliente.

Criando repositórios Git no servidor:

Os clientes não podem criar novos repositórios Git no servidor. O gerenciador do Git Server deve criar um repositório no servidor. Então, os clientes podem clonar, empurrar/puxar do repositório.

Agora, crie um novo repositório Git vazio Testrepo No servidor Git da seguinte forma:

$ git init -bare testrepo

Agora, o cliente só precisa saber o endereço IP do servidor Git para acessar o Testrepo Repositório Git.

O gerenciador do Git Server pode encontrar essas informações da seguinte forma:

$ ip a

Como você pode ver, o endereço IP do servidor Git é 192.168.21.185. Agora, o gerenciador de servidores pode contar aos clientes que estarão trabalhando no projeto.

Repositório Git de clonagem do servidor:

Depois que o cliente conhece o endereço IP e o nome do repositório Git, ele pode cloná -lo no seu computador da seguinte forma:

$ git clone [email protected]: ~/> testrepo

Agora, digite sim e pressione . Você precisará fazer isso uma vez, apenas na primeira vez.

O Testrepo O repositório Git deve ser clonado do servidor.

Um novo diretório Testrepo deve ser criado.

Fazendo alterações e empurrando alterações no servidor Git:

Agora, o cliente pode adicionar compromissos com o testrepo/ repositório e empurre as alterações no servidor Git.

$ CD testRepo/
$ eco "Hello World"> Teste.TXT
$ git add .
$ git commit -m 'Commits inicial'
[/cc [

[CC Lang = "Bash"]
$ Git Push Origin

Adicionando um novo membro da equipe:

Agora, digamos, prumo quer contribuir para o Testrepo Repositório Git.

Tudo o que ele precisa fazer é gerar um par de chaves ssh e enviar a chave pública para o Git Server Manager.

$ ssh-keygen

Uma vez que o gerenciador de servidor Git tenha a chave pública de prumo, Ele pode carregá -lo para o servidor Git e adicioná -lo ao .ssh/autorizado_keys Arquivo o seguinte:

$ cat /tmp /bob-key.pub >> ~///.ssh/autorizado_keys

Agora, prumo pode clonar o Testrepo Repositório Git do servidor da seguinte forma:

$ git clone [email protected]: ~/testrepo

Testrepo deve ser clonado.

Um novo diretório Testrepo deve ser criado no computador de Bob.

Agora, Bob pode navegar para o repositório Git da seguinte forma:

$ CD testRepo/

Ele deve encontrar algumas confirmações existentes.

$ git log

Agora, prumo pode fazer seu próprio trabalho e cometê -lo. Em seguida, empurre as alterações no servidor.

$ eco "Hello World 2" >> teste.TXT
$ git add .
$ git Commit -m 'Mensagem alterada'
$ Git Push Origin

Agora, outras pessoas que trabalham no mesmo repositório podem fazer as alterações da seguinte forma:

$ Git Pull Origin

Ele/ela deve encontrar os compromissos que prumo feito.

Então, é assim que você configura um servidor Git com SSH no Ubuntu e usa -o. Obrigado por ler este artigo.