É a melhor maneira de trabalhar com Github e vários computadores?
-
08-07-2019 - |
Pergunta
Estou desenvolvendo alguns softwares classificação escola e decidiu usar Github para sediar o projeto. Depois de construir algum código no meu Ubuntu caixa eu empurrei-o para Github e depois clonado lo para baixo para o meu MacBook Pro. Depois de editar o código da MBP eu empurrei-o de volta para Github. Na manhã seguinte eu tentei atualizar meu repo na caixa de Ubuntu com um git pull
e ele me deu todos os tipos de problemas.
Qual é a melhor maneira de trabalhar nesta situação? Eu não quero que desembolsar meu próprio repo e eu realmente não quero me enviar e-mails ou solicitações de pull. Por que não posso apenas tratar Github como um mestre e envio / recepção dele em todos os meus repos pessoais em computadores diferentes?
Solução
Eu vou assumir o seu problema era que a máquina na qual você criou primeiro o repo defecou fora quando tentou emitir o comando git pull
.
Quando você clonar um repositório git existente (como você fez em sua máquina 2º, o MacBook Pro), você está pronto automaticamente até que seus comandos git pull
irá mesclar automaticamente o controle remoto com as alterações locais.
No entanto, quando você inicialmente criar um repo e, em seguida, compartilhá-lo em um repositório remoto, você tem que emitir alguns comandos para fazer as coisas como automatizado como em repo clonado.
# GitHub gives you that instruction, you've already done that
# git remote add origin git@github.com:user_name/repo_name.git
# GitHub doesn't specify the following instructions
git config branch.master.remote origin
git config branch.master.merge refs/heads/master
Estes últimos instruções configure git assim futuro git pull
da partir deste repo irá mesclar todas as alterações remotas automaticamente.
O seguinte é um pouco de desavergonhada auto-promoção. Se você usar Ruby, eu criei uma ferramenta baseada em Ruby que permite lidar com todos estes tipos de coisas com filiais remotas git. A ferramenta é chamada, sem surpresa, git_remote_branch : -)
Se você não usar Ruby, minha ferramenta é provavelmente vai ser demasiado de um aborrecimento para instalar. O que você pode fazer é olhar para um post antigo no meu blog , onde a maioria da OOG material pode fazer por você foi explicitamente mostrado. Chicote para fora seu arquivo de notas git: -)
Outras dicas
Você também pode adicionar SSH múltiplas chaves públicas .