Android

Como configurar um servidor git

33 - Servidor FTP - Windows Server 2008 R2

33 - Servidor FTP - Windows Server 2008 R2

Índice:

Anonim

Quando se trata de hospedagem Git, você tem várias opções disponíveis. GitHub, Gitlab e Bitbucket são soluções populares, mas executar o seu próprio servidor Git é uma alternativa que vale a pena considerar.

A configuração de um servidor Git permite criar repositórios privados sem as restrições dos planos gratuitos dos provedores.

Neste guia, explicamos como configurar um servidor Git vazio no Linux. Essa configuração é boa se você tiver poucos repositórios e os colaboradores tiverem conhecimento de tecnologia. Caso contrário, considere instalar um aplicativo git auto-hospedado, como Gitea, Gogs ou Gitlab.

O servidor Git pode ser configurado em qualquer máquina Linux remota ou mesmo no seu sistema local.

Configurando o servidor Git

O primeiro passo é instalar o Git no seu servidor.

sudo apt update && sudo apt install git

Para instalar o pacote git nos servidores CentOS, digite:

sudo yum install git

Em seguida, crie um novo usuário que gerencie os repositórios Git:

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

O diretório inicial do usuário está definido como /home/git . Todos os repositórios serão armazenados neste diretório. Não definimos uma senha para o usuário “git”, o login será possível apenas usando as teclas ssh.

Mude para o usuário "git" usando o comando su :

sudo su - git

Execute os seguintes comandos para criar o diretório SSH e defina as permissões corretas:

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

Crie um arquivo chamado ~/.ssh/authorized_keys que conterá as chaves SSH dos usuários autorizados:

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

É isso aí. A configuração do servidor está concluída. Agora você está pronto para criar seu primeiro repositório Git.

Execute o seguinte comando para iniciar um novo repositório vazio:

git init --bare ~/projectname.git

Você pode nomear o diretório como desejar. O importante é criar o repositório no diretório inicial do usuário "git".

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

Configurando o repositório Git local

Para poder enviar as alterações locais do git para o servidor Git, adicione a chave pública SSH do usuário local ao arquivo authorized_keys do usuário remoto do "git".

cat ~/.ssh/id_rsa.pub

A saída deve ser algo como o seguinte:

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

Para gerar um novo par de chaves SSH, use o seguinte comando:

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

Copie a saída do comando cat acima e volte ao console do servidor Git.

No servidor, abra seu editor de texto e cole a chave pública que você copiou da máquina local no ~/.ssh/authorized_keys :

sudo nano /home/git/.ssh/authorized_keys

O texto completo da chave pública deve estar em uma única linha.

Estamos assumindo que o pacote Git já está instalado na sua máquina local. Caso contrário, instale-o da mesma maneira como explicado nas seções anteriores.

cd /path/to/local/project

Inicialize um repositório git:

git init.

A última etapa é adicionar o git remote ao seu repositório local:

git remote add origin git@git_server_ip:projectname.git

Não esqueça de substituir git_server_ip pelo nome do host ou endereço IP do servidor Git.

Para verificar se tudo está configurado corretamente, crie um arquivo de teste:

touch test_file

Inclua as alterações na área de preparação:

git add.

Confirme as alterações:

git commit -m "descriptive message"

Envie as alterações do repositório local para um repositório remoto:

git push -u origin master

Se tudo estiver configurado corretamente, a saída deve ser algo como isto:

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 adicionar um novo colaborador, basta copiar sua chave SSH pública no arquivo ~/.ssh/authorized_keys do usuário “git”.

Você pode usar as mesmas etapas para criar novos repositórios. É importante observar que o repositório remoto deve existir antes de você adicionar o git remote ao seu repositório local.

Conclusão

Neste tutorial, mostramos como configurar seu próprio servidor Git privado e criar repositórios.