Para instalar e configurar o Git e o Gitolite para controle de versão no Ubuntu, é necessário seguir uma série de passos. O Git é um sistema de controle de versão distribuído amplamente utilizado para rastrear mudanças em arquivos de código fonte durante o desenvolvimento de software. Já o Gitolite é uma camada de gerenciamento de acesso e autorização para repositórios Git, oferecendo controle de acesso fino e seguro.
Aqui está um guia passo a passo para realizar essa instalação e configuração:
- Atualização dos repositórios do sistema:
Antes de começar a instalação, é recomendável garantir que os repositórios do sistema estejam atualizados. Isso pode ser feito executando o seguinte comando:
bashsudo apt update
- Instalação do Git:
O Git pode ser facilmente instalado usando o gerenciador de pacotes apt. Execute o seguinte comando para instalar o Git:
bashsudo apt install git
- Configuração do Git:
Após a instalação, é importante configurar as informações do usuário no Git. Substitua “seu_nome” e “seu_email” pelos seus dados reais:
bashgit config --global user.name "seu_nome"
git config --global user.email "seu_email"
- Instalação do Gitolite:
Agora, vamos instalar o Gitolite. O Gitolite é instalado como um usuário específico no sistema. Vamos criar um usuário chamado “git” para este propósito:
bashsudo adduser --system --shell /bin/bash --gecos 'git version control' --group --disabled-password --home /home/git git
- Download do Gitolite:
Agora, faça o download do Gitolite no diretório home do usuário git que acabamos de criar:
bashcd /home/git
sudo -u git git clone https://github.com/sitaramc/gitolite
- Instalação do Gitolite:
Após o download, entre no diretório do Gitolite e execute o script de instalação:
bashcd /home/git/gitolite
sudo -u git src/gl-system-install
Este script irá instalar o Gitolite e configurá-lo corretamente.
- Configuração do Gitolite:
Agora, é necessário gerar um par de chaves SSH para autenticação com o Gitolite. Isso pode ser feito no seu sistema local:
bashssh-keygen -t rsa -b 4096 -C "seu_email"
Quando solicitado, pressione Enter para aceitar o local padrão para salvar a chave. Em seguida, você será solicitado a fornecer uma senha (ou deixar em branco, se preferir). Isso criará um par de chaves pública e privada na pasta ~/.ssh.
- Adição da chave pública ao Gitolite:
Agora, você precisa adicionar sua chave pública ao Gitolite. Você pode fazer isso executando o seguinte comando, substituindo “sua_chave_publica.pub” pelo caminho para sua chave pública:
bashsudo -u git /home/git/gitolite/src/gl-setup -q /home/usuario/.ssh/sua_chave_publica.pub
Isso concederá acesso ao Gitolite usando sua chave SSH pública.
- Clonagem do repositório Gitolite-admin:
Agora, você pode clonar o repositório especial ‘gitolite-admin’, que contém as configurações do Gitolite:
bashgit clone git@localhost:gitolite-admin
-
Configuração do Gitolite-admin:
Dentro do repositório ‘gitolite-admin’, você pode editar o arquivo ‘conf/gitolite.conf’ para adicionar ou modificar as permissões dos repositórios Git controlados pelo Gitolite. Este arquivo usa uma sintaxe simples para configurar as permissões de acesso. -
Confirmação e envio das alterações:
Depois de fazer as alterações desejadas no arquivo de configuração, confirme e envie essas alterações de volta para o repositório Gitolite-admin:
bashcd gitolite-admin
git add .
git commit -m "Atualização da configuração"
git push
Isso aplicará suas alterações de configuração ao Gitolite.
Com esses passos, você terá o Git e o Gitolite instalados e configurados no seu sistema Ubuntu, prontos para gerenciar seus repositórios Git com controle de acesso e autorização.
“Mais Informações”

Claro, vamos expandir um pouco mais sobre cada passo e fornecer informações adicionais sobre o Git e o Gitolite.
- Atualização dos repositórios do sistema:
Antes de instalar qualquer software novo no Ubuntu, é uma prática recomendada garantir que os repositórios do sistema estejam atualizados. Isso garante que você esteja baixando as versões mais recentes dos pacotes disponíveis.
O comando sudo apt update atualiza o índice de pacotes do sistema, verificando se há atualizações disponíveis nos repositórios configurados no Ubuntu.
- Instalação do Git:
O Git é um sistema de controle de versão distribuído que permite rastrear as mudanças nos arquivos de um projeto ao longo do tempo. Ele é amplamente utilizado por desenvolvedores de software para colaborar em projetos e controlar o histórico de alterações.
Ao instalar o Git com o comando sudo apt install git, estamos usando o gerenciador de pacotes apt para baixar e instalar o Git a partir dos repositórios oficiais do Ubuntu.
- Configuração do Git:
Após a instalação do Git, é importante configurar suas informações de usuário, como nome e email, para que os commits feitos no Git registrem corretamente quem fez as alterações.
O comando git config --global é usado para definir configurações globais para o usuário atual do Git. Essas configurações são armazenadas no arquivo de configuração do Git, que geralmente está localizado em ~/.gitconfig.
- Instalação do Gitolite:
O Gitolite é uma camada de gerenciamento de acesso e autorização para repositórios Git. Ele oferece recursos avançados de controle de acesso, como permissões baseadas em usuários e grupos, e é útil para ambientes onde é necessário controlar quem pode acessar e modificar quais repositórios.
Aqui, estamos criando um usuário de sistema chamado “git” para executar o Gitolite. Este usuário é criado sem uma senha e é configurado como um usuário de sistema para fins de segurança.
- Download do Gitolite:
O Gitolite é distribuído como um repositório Git. Portanto, podemos usar o comandogit clonepara baixar o código-fonte do Gitolite do repositório oficial no GitHub.
O diretório /home/git é escolhido como o local para baixar o Gitolite, mas você pode escolher um local diferente, se desejar.
- Instalação do Gitolite:
Depois de baixar o código-fonte do Gitolite, executamos o scriptgl-system-installdentro do diretório do Gitolite para instalar e configurar o Gitolite no sistema.
Este script instala os binários do Gitolite, configura as permissões adequadas nos arquivos e diretórios relevantes e define as variáveis de ambiente necessárias para o funcionamento correto do Gitolite.
- Configuração do Gitolite:
Depois de instalar o Gitolite, é necessário configurá-lo para gerenciar os repositórios Git. Isso envolve adicionar chaves SSH públicas para autenticação de usuários e definir permissões de acesso aos repositórios.
As configurações do Gitolite são feitas através do arquivo gitolite.conf, onde você pode especificar quais usuários têm acesso a quais repositórios e com quais permissões.
- Adição da chave pública ao Gitolite:
Para conceder acesso ao Gitolite, você precisa adicionar sua chave pública ao Gitolite. Isso permite que você autentique no Gitolite usando SSH e faça operações nos repositórios Git gerenciados pelo Gitolite.
O comando gl-setup é fornecido pelo Gitolite para adicionar chaves públicas ao sistema Gitolite.
- Clonagem do repositório Gitolite-admin:
O repositóriogitolite-adminé um repositório especial no Gitolite que armazena as configurações do Gitolite. Este repositório é usado para configurar permissões de acesso e outras configurações relacionadas ao Gitolite.
Ao clonar este repositório, você pode fazer alterações nas configurações do Gitolite usando um repositório Git regular.
-
Configuração do Gitolite-admin:
Dentro do repositóriogitolite-admin, você pode editar o arquivogitolite.confpara definir as permissões de acesso aos repositórios Git. Este arquivo usa uma sintaxe simples para especificar quem pode fazer o quê em cada repositório. -
Confirmação e envio das alterações:
Depois de fazer as alterações desejadas no arquivo de configuração do Gitolite, você precisa confirmar essas alterações e enviá-las de volta para o repositóriogitolite-admin. Isso aplica suas configurações ao Gitolite, permitindo que você controle o acesso aos seus repositórios Git de acordo com suas necessidades.
Estes são os passos fundamentais para instalar e configurar o Git e o Gitolite no Ubuntu, proporcionando um ambiente seguro e controlado para o gerenciamento de versões de seus projetos de software.


