Git

Configure o servidor Git com HTTP no CentOS 8

Configure o servidor Git com HTTP no CentOS 8
Neste artigo, vou mostrar como configurar o servidor Git Smart HTTP no CentOS 8 para hospedar seus repositórios Git de forma privada. Então vamos começar.

Instalando Git e Apache HTTP Server:

Primeiro, atualize o cache do repositório de pacotes CentOS 8 com o seguinte comando:

$ sudo dnf makecache

Agora, instale Git, servidor Apache HTTP e ferramentas Apache com o seguinte comando:

$ sudo dnf install git httpd httpd-tools

Agora aperte Y e então pressione para confirmar a instalação.

Git, Apache e as ferramentas necessárias do Apache devem ser instalados.

Configurando o servidor Apache HTTP:

Nesta seção, vou mostrar como configurar o servidor Apache para acessar repositórios Git sobre protocolo HTTP.

Primeiro, crie um novo arquivo de configuração / etc / httpd / conf.d / git.conf com o seguinte comando:

$ sudo vi / etc / httpd / conf.d / git.conf

Agora, adicione as seguintes linhas ao arquivo de configuração / etc / httpd / conf.d / git.conf:


SetEnv GIT_PROJECT_ROOT / var / www / git
SetEnv GIT_HTTP_EXPORT_ALL
DocumentRoot / var / www / git
ScriptAlias ​​/ / usr / libexec / git-core / git-http-backend /
 

Opções + ExecCGI -MultiViews + SymLinksIfOwnerMatch
AllowOverride Nenhum
Exigir todos concedidos


Dav On
Opções de índices FollowSymLinks
AllowOverride Nenhum
Exigir todos concedidos

O arquivo de configuração final deve ser o seguinte. Agora, salve o arquivo de configuração.

Agora, crie o GIT_PROJECT_ROOT diretório / var / www / git com o seguinte comando:

$ sudo mkdir / var / www / git

Agora, configure o SELinux para o / var / www / git diretório com o seguinte comando:

$ sudo semanage fcontext -m -t httpd_sys_rw_content_t
"/ var / www / git (/.*)?"

Para que as alterações do SELinux entrem em vigor, execute o seguinte comando:

$ sudo restorecon -Rv / var / www / git

Agora, reinicie o serviço do servidor Apache HTTP com o seguinte comando:

$ sudo systemctl restart httpd

Além disso, adicione o serviço do servidor Apache HTTP à inicialização do sistema CentOS 8 com o seguinte comando:

$ sudo systemctl enable httpd

Agora, permita a porta HTTP (80) através do filewall com o seguinte comando:

$ sudo firewall-cmd --add-service = http --permanent

Para que as alterações tenham efeito, recarregue o firewall da seguinte maneira:

$ sudo firewall-cmd --reload

Escrevendo um script para criar repositórios Git acessíveis por HTTP com mais facilidade:

Para tornar mais fácil a criação de repositórios Git acessíveis por HTTP, escrevi um script de shell simples que você pode usar para economizar muito do seu valioso tempo.

Se você quiser usar meu script, crie um novo arquivo no caminho / usr / sbin / git-crate-repo com o seguinte comando:

$ sudo vi / usr / sbin / git-create-repo

Em seguida, digite as seguintes linhas de códigos no arquivo recém-criado / usr / sbin / git-crate-repo.

#!/ bin / bash
GIT_DIR = "/ var / www / git"
REPO_NAME = $ 1
mkdir -p "$ GIT_DIR / $ REPO_NAME.idiota "
cd "$ GIT_DIR / $ REPO_NAME.idiota "
git init --bare &> / dev / null
toque em git-daemon-export-ok
cp hooks / post-update.exemplo de ganchos / pós-atualização
git config http.receivepack true
git config http.uploadpack true
git update-server-info
chown -Rf apache: apache "$ GIT_DIR / $ REPO_NAME.idiota "
echo "Repositório Git '$ REPO_NAME' criado em $ GIT_DIR / $ REPO_NAME.idiota "

É assim que se parece o shell script final. Quando terminar, salve o arquivo.

Agora, adicione permissão executável ao script de shell / usr / sbin / git-create-repo com o seguinte comando:

$ sudo chmod + x / usr / sbin / git-create-repo

Crie repositórios Git acessíveis por HTTP:

Agora, você pode criar um novo repositório Git acessível por HTTP (vamos chamá-lo teste) com o seguinte comando:

teste $ sudo git-create-repo

Um novo repositório Git acessível por HTTP teste deve ser encaixotado.

Acessando os Repositórios Git do servidor Git:

Para acessar os repositórios Git que você criou em seu servidor CentOS 8 Git, você precisa desse endereço IP do servidor CentOS 8 Git e o nome do repositório Git.

O administrador do servidor Git pode encontrar o endereço IP do servidor Git com o seguinte comando:

$ nmcli

No meu caso, o endereço IP é 192.168.20.129. Será diferente para você. Portanto, certifique-se de substituí-lo pelo seu a partir de agora.

Assim que o administrador do servidor Git encontrar o endereço IP, ele poderá enviá-lo aos usuários / desenvolvedores que usarão repositórios Git hospedados no servidor Git. Em seguida, os usuários / desenvolvedores podem acessar seus repositórios Git desejados.

Por exemplo, se prumo quer clonar o repositório Git teste a partir do servidor Git, ele pode fazer isso da seguinte maneira:

$ git clone http: // 192.168.20.129 / teste.idiota

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

Um novo diretório teste/ deve ser criado no diretório de trabalho atual de bob.

Agora, Bob pode navegar para o teste/ diretório da seguinte forma:

$ cd test /

Agora, bob cria um novo arquivo mensagem.TXT no repositório Git.

$ echo 'hello from linuxhint' >> mensagem.TXT

Bob confirma as mudanças.

$ git add .

$ git commit -m 'commit inicial'

Bob confirma se as alterações foram confirmadas no repositório.

$ git log --oneline

Agora, bob carrega as alterações para o servidor Git.

$ git push origin

Outro desenvolvedor (digamos ) que deseja contribuir para o teste O repositório Git também pode clonar o teste repositório do servidor Git.

$ git clone http: // 192.168.20.129 / teste.idiota

Shovon navega para o teste/ diretório.

$ cd test /

Shovon encontra o commit que Bob fez.

Agora, shovon muda a mensagem.arquivo txt.

$ echo 'shovon adicionou alguns novos textos' >> mensagem.TXT

Compromete as mudanças.

$ git add .

$ git commit -m 'adicionou alguma mensagem nova'

Shovon confirma se as alterações foram confirmadas no repositório.

$ git log --oneline

Shovon carrega as mudanças para o servidor Git.

$ git push origin

Agora, bob puxa as mudanças do servidor Git.

$ git pull

Bob encontra o novo commit.

$ git log --oneline

Bob encontra as mudanças que Shovon fez na mensagem.arquivo txt.

É assim que você pode usar os repositórios Git do servidor Git HTTP.

Adicionando autenticação de usuário ao servidor Git:

Se você deseja adicionar autenticação de usuário a repositórios Git em todo o servidor ou repositórios Git específicos, consulte o artigo Configurar servidor Git com HTTP no Ubuntu.

Então, é assim que você configura o Git Smart HTTP Server no CentOS 8 e usa os repositórios Git do servidor Git. Obrigado por ler este artigo.

Remapeie os botões do mouse de maneira diferente para software diferente com o controle de botão do mouse X
Talvez você precise de uma ferramenta que possa fazer o controle do seu mouse mudar com cada aplicativo que você usa. Se for esse o caso, você pode ex...
Análise do mouse sem fio Microsoft Sculpt Touch
Recentemente li sobre o Microsoft Sculpt Touch mouse sem fio e decidi comprá-lo. Depois de usá-lo por um tempo, decidi compartilhar minha experiência ...
AppyMouse na tela Trackpad e ponteiro do mouse para tablets Windows
Os usuários de tablets costumam perder o ponteiro do mouse, especialmente quando costumam usar laptops. Os smartphones e tablets touchscreen vêm com m...