Criando um repo com git (ou qualquer controle de versão)

1

Eu tenho todos os meus códigos / projetos como repositórios no github. Eu uso muito git, eu tenho poucos projetos que eu não posso empurrar para o github ao mesmo tempo, eu quero manter um backup no meu disco rígido externo, existe algum software existente onde você pode transformar seu disco rígido externo em um repositório onde Eu posso apenas apertar o botão e o código é empurrado para o repo no meu disco rígido?

Isso facilita muito o envio quando você está trabalhando e mantém um backup.

Colocação simples, o hub do Git localmente em um disco rígido. É isso aí.

Se ele não existe, como começar isso e escrever meu próprio software? Dê suas idéias.

    
por jarvis11 31.08.2014 / 10:24

1 resposta

2

Método do Micro-Servidor do GitHub

Para fazer isso, você precisará de uma chave pública. Informações sobre como gerar um podem ser encontradas em toda a internet. Faça isso agora. Você precisará disso em um segundo. Você também precisará do pacote openssh-server instalado.

Primeiramente, você precisa preparar o ambiente para o Git. Para fazer isso, você precisa criar um usuário.

sudo adduser git
su git
cd
mkdir .ssh

Este usuário fará todas as funções do Git. Você vai precisar da sua chave pública aqui. Basta executar:

cat /path/to/your/public/key.pub >> ~/.ssh/authorized_keys
chmod -R go= ~/.ssh

Agora, você tem o SSH e o usuário do Git completamente configurados. Agora, precisamos fazer um projeto do Git. Para fazer isso, execute estes comandos (ainda como usuário do Git):

cd ~ 
mkdir git
cd git 
mkdir project.git 
cd project.git 
git --bare init 

Você deve entrar e fazer os comandos acima toda vez que quiser fazer um novo repo. Mais detalhes depois. Eu prometo!

Agora você tem um servidor Git em funcionamento ao qual você pode se conectar! Você pode fazer todas as coisas divertidas que você gosta de fazer com o Git agora!

cd myproject
git init
git add .
git commit -m 'initial commit'
git remote add origin git@localhost:/home/git/git/project.git
git push origin master

É claro que você pode convidar outras pessoas em sua rede local para usar este servidor Git, desde que elas se conectem com seu IP local em vez de localhost .

Agora, provavelmente, um projeto não é suficiente para você. Felizmente, existe uma maneira simples de adicionar / remover repos. Execute os seguintes comandos:

su git
cd ~/git
mkdir project_name.git
cd project_name.git
git --bare init

Depois, conecte-se ao outro repositório do Git quando precisar. Está tudo apenas mudando variáveis!

Você também pode (se quiser) ter uma interface web para o Git. Informações estão disponíveis na fonte oficial do GitHub.

Fonte para este guia: git-scm.com - É um ótimo lugar para aprender como iniciar um servidor Git. Comece de 4.4 (ligado) e siga em frente.



file:/// Método URI

Feh. Como @muru apontou em um comentário, o Git suporta o file:/// URI. Aqui está uma maneira de fazer isso sem nenhum usuário, mas sem mais micro-servidores, caso seus amigos venham jogar.

Como você:

cd ~ 
mkdir .git-projects
cd .git-projects
mkdir project.git 
cd project.git 
git --bare init 

Para conectar:

cd myproject
git init
git add .
git commit -m 'initial commit'
git remote add origin file:///home/user/.git-project/project.git
git push origin master

Eu pessoalmente gosto mais do microserver. Você pode movê-lo mais fácil, esp. se você receber um VPS.



Comentários finais

O método do servidor SSH não permite salvar em um disco rígido externo (facilmente), mas o método file:/// faz isso. Apenas mude os caminhos!

Você poderia, teoricamente, tornar a casa do usuário "git" no disco rígido externo, mas isso poderia causar mais problemas do que benefícios.

    
por Kaz Wolfe 31.08.2014 / 10:46