GIT completou 17 anos esse mês, ele é um sistema de controle de versões de código iniciado pelo Linus Torvalds, inicialmente feito para controle do desenvolvimento do kernel do Linux, e hoje usado de diversas maneiras (mas ainda principalmente no desenvolvimento de software).
Existem diversas razões para querer ter um GIT server próprio, acredito que a maior delas seja a segurança do seu código, se ele possui dados sensíveis ou seja proprietário, pode ser uma boa ideia não usar serviços populares como Github ou Bitbucket.
Enquanto não tenho oportunidade de comprar um Raspberry Pi 4, resolvi usar meu Model 3 pra brincar um pouco e decidir criar um servidor de GIT com ele. O processo é bem simples.
O que usei foi:
- Raspberry Pi Model 3
- Pendrive (FAT)
- OS Raspbian
Como falamos de segurança, a primeira coisa a fazer é criar um usuário separado para usar, pois usaremos uma chave SSH para "publicar" no nosso server, você pode sim usar o usuário root mas não é aconselhável de jeito nenhum.
Criei um user chamado gitsv e dei uma senha pra ele, agora voce pode acessar o user com
su gitsv
após
cd
Se tudo deu certo a gente já pode acessar por outra máquina na rede local.
Digite agora ssh-keygen
e siga os passos, agora envie essa public key para o server com ssh-copy-id -i [local]/unique_key.pub gitsv@[endereco]
Agora pra garantir, manda um
sudo apt-get update
sudo apt-get upgrade
sudo reboot
Acesse novamente o Raspberry por SSH e instale o GIT
sudo apt-get install wget git
Depois disso pode desligar o PI que vamos deixar pronto o pendrive.
Pode plugar o pendrive e iniciar o PI, logue nele e pode usar o comando mkdir nome
no meu, usei pdrivedir como nome. Depois, vamos usar o comando blkid
que vai listar nossos blocks com um identificador único (UUID), o system type (TYPE) e rótulo de volume (LABEL). No meu caso, foi assim:
Precisamos agora dizer pro PI que nossos arquivos irão pro diretório que criamos (pdrivedir).
Pra isso, usamos nano /etc/fstab
e adicionamos ao final do arquivo: /dev/sda1 /home/pi/pdrivedir vfat uid=pi,gid=pi,umask=0022,sync,auto,nosuid,rw,nouser 0 0
Lembrando de substituir o /dev/sda1 pela info do seu pendrive. Mete aquele CTRL-X, Y e Reboot.
Bora criar agora uma pasta com final .git que vai ser nosso repositorio:
mkdir pdrivedir/projeto.git
cd pdrivedir/projeto.git
E dentro da pasta, vamos iniciar o git, com:
git init --bare
Inclusive recomendo esse link pra entender os repos bare e non-bare
Quer saber como dar o primeiro commit? Então:
Precisamos fazer com que nosso git local esteja ciente desse repositório que criamos, bora com:
git remote add origin gitsv@endereco:/local/projeto.git
"origin" pode ser qualquer nome de sua escolha. E agora o último passo é "pushar" o projeto para esse repositório, se for pra branch "master" o comando será esse git push origin master
Finalizado! O repo GIT está prontíssimo no seu servidor local, sendo armazenado no pendrive.
Se quiser, podemos também deixar esse Raspberry Pi online, definindo um endereço de IP fixo e redirecionando uma porta (nesse caso a 22).
Top comments (0)