Diferença entre Git e GitHub


Respostas:


366

Git é um sistema de controle de revisão, uma ferramenta para gerenciar seu histórico de código-fonte.

GitHub é um serviço de hospedagem para repositórios Git.

Portanto, eles não são a mesma coisa: Git é a ferramenta , GitHub é o serviço para projetos que usam Git .

Para obter seu código no GitHub, dê uma olhada aqui .


22
Mais notavelmente, o GitHub é uma consequência da existência do git e não o único serviço de hospedagem.
Jonas Schäfer

83
Além disso, você não precisa usar um serviço remoto como o github se tudo o que você quer é controle de versão - o git local é adequado para isso. Repositórios remotos são para backup e colaboração.
Thilo

3
Observe que você pode criar um repositório git remoto em muitos servidores web, como webfaction vs heroku. É um pouco mais difícil configurar esse github, mas mais barato para grandes equipes.
Adrian Lopez

1
confira esta comparação para saber mais sobre o Git Hosting Services. git-tower.com/blog/git-hosting-services-compared
Junaid

Eu acho que o uso das palavras "ferramenta" e "serviço" é ambíguo para pessoas não familiarizadas com o problema (ou seja, pessoas pesquisando essa questão no Google). Talvez "o Git seja uma tecnologia para gerenciar o código-fonte, enquanto o GitHub é um dos muitos produtos que fornecem o git como um serviço para o código que você hospeda com eles".
Rashad Saleh

68

Na analogia do SVN, o Git substitui o SVN, enquanto o GitHub substitui o SourceForge: P

Se esse seu projeto for novo, você ainda poderá se comprometer com o Git local, e poderá enviar para o GitHub posteriormente. Você precisará adicionar seu repositório GitHub como um 'repositório remoto' na sua configuração do Git.

Eles parecem ter algo para os usuários do Eclipse: http://eclipse.github.com/

Caso contrário, se você é novo no Git: http://git-scm.com/book


Quais são as alternativas ao uso de um GITHUB online?
variável

@variable Você quer dizer algo como um repositório Git local ou um servidor Git auto-hospedado como o GitLab?
bakkal

65

O que é o Git :

"O Git é um sistema de controle de versão distribuído de código aberto e gratuito , projetado para lidar com tudo, de projetos pequenos a grandes, com velocidade e eficiência"

Git é um sistema de controle de versão ponto a ponto distribuído. Cada nó na rede é um par, armazenando repositórios inteiros que também podem atuar como backups distribuídos de vários nós. Não existe um conceito específico de servidor central, embora os nós possam ficar sem cabeça ou "vazios", assumindo uma função semelhante ao servidor central em sistemas de controle de versão centralizados.

O que é o GitHub :

"O GitHub é um serviço de hospedagem de repositório Git baseado na Web , que oferece toda a funcionalidade de controle de revisão distribuído e gerenciamento de código-fonte (SCM) do Git, além de adicionar seus próprios recursos".

O Github fornece controle de acesso e vários recursos de colaboração, como wikis, gerenciamento de tarefas, rastreamento de bugs e solicitações de recursos para cada projeto.

Você não precisa do GitHub para usar o Git.

O GitHub (e qualquer outro sistema local, remoto ou hospedado) pode ser semelhante nos mesmos repositórios distribuídos com versão distribuída em um único projeto.

O Github permite:

  • Compartilhe seus repositórios com outras pessoas.
  • Acesse os repositórios de outros usuários.
  • Armazene cópias remotas de seus repositórios (servidores github) como backup de suas cópias locais.

diga-me por que o git é chamado de distribuído? apenas porque a alteração da loja git está definida no PC local? esclareça esse significado da palavra distribuída porque sou novo no git. graças
Mou

1
Você precisa do Git para usar o GitHub?
user3187724

25

Git - A ferramenta de controle de versão em que o GitHub é desenvolvido.

GitHub - Nossa empresa e o nome do nosso software. Criamos software e sites para ajudá-lo a interagir com os repositórios do Git de uma maneira agradável.

GitHub.com - O site em que você efetua login para visualizar repositórios online.

GitHub Desktop - Um aplicativo que você pode instalar no seu computador para ajudá-lo a sincronizar o código local com o GitHub.com.

fonte: https://guides.github.com/introduction/getting-your-project-on-github/


15

Há várias diferenças óbvias entre o Git e o GitHub .

O próprio Git está realmente focado nas tarefas essenciais do controle de versão. Ele mantém um histórico de consolidação, permite reverter as alterações por meio de comandos de redefinição e reversão , além de compartilhar o código com outros desenvolvedores por meio de comandos push e pull. Acho que esses são os recursos essenciais que todo desenvolvedor deseja de uma ferramenta DVCS.

Gráfico de comparação Git versus GitHub

Sem oscilação de escopo com Git

Mas uma coisa sobre o Git é que ele é realmente apenas focado a laser no controle do código fonte e nada mais. Isso é incrível, mas também significa que a ferramenta carece de muitos recursos que as organizações desejam. Por exemplo, não há recursos internos de gerenciamento de usuários para autenticar quem está conectando e confirmando o código. A integração com coisas como Jira ou Jenkins é deixada para os desenvolvedores descobrirem coisas como ganchos. Basicamente, existem vários locais onde os recursos podem ser integrados. É aí que organizações como GitHub e GitLab entram.

Recursos adicionais do GitHub

O principal "valor agregado" do GitHub é que ele fornece uma plataforma baseada em nuvem para o Git. Isso por si só é incrível. Além disso, o GitHub também oferece:

  • rastreamento de tarefas simples
  • um aplicativo de desktop do GitHub
  • edição de arquivos online
  • regras de proteção de filial
  • recursos de solicitação de recebimento
  • ferramentas organizacionais
  • limites de interação para cabeças quentes
  • suporte emoji !!! : octocat:: +1:

Então o GitHub realmente adiciona polimento e refinamento a uma ferramenta DVCS já popular.

Concorrentes do Git e GitHub

Às vezes, quando se trata de diferenciar o Git e o GitHub, acho bom ver com quem eles competem. O Git compete em um avião com ferramentas como Mercurial, Subversion e RTC, enquanto o GitHub está mais no espaço SaaS competindo contra fornecedores de nuvem como GitLab e BitBucket da Atlassian.

Não requer GitHub

Sempre gosto de lembrar às pessoas que você não precisa do GitHub, GitLab ou BitBucket para usar o Git. Git foi lançado em quê, 2005? O GitHub não entrou em cena até 2007 ou 2008, então grandes organizações estavam controlando a versão distribuída com o Git muito antes dos fornecedores de hospedagem em nuvem aparecerem. Então o Git está bem por si só. Ele não precisa de um serviço de hospedagem em nuvem para ser eficaz. Mas, ao mesmo tempo, ter um provedor de PaaS certamente não faz mal.

Trabalhando com o GitHub Desktop

A propósito, você mencionou a incompatibilidade entre os repositórios na sua conta do GitHub e os repositórios que você tem localmente? Isso é compreensível. Até que você se conecte e faça uma busca ou busca, o repositório Git local não sabe sobre o repositório GitHub remoto. Dito isso, o GitHub fornece uma ferramenta conhecida como área de trabalho GitHub que permite conectar-se ao GitHub a partir de um cliente de área de trabalho e carregar facilmente repositórios locais do Git no GitHub ou trazer repositórios do GitHub para a sua máquina local.

Área de trabalho do GitHub

Não estou muito impressionado com a ferramenta, pois uma vez que você conhece o Git, essas coisas não são tão difíceis de fazer no shell Bash, mas é uma opção.

A luta entre Git e GitHub


9

De uma maneira simples, podemos dizer abaixo a diferença entre git e git hub e VSTS.

git : - Trate o git como um mecanismo / tecnologia para obter o controle da versão fonte do nosso projeto. Diferentemente do TFS (novamente um controle de versão de fonte centralizada), o git é uma tecnologia de controle de versão distribuída. Isso significa que o git na verdade não exige nenhum servidor. Através da tecnologia git, podemos criar nossa própria máquina local como um repositório de código-fonte, não exigindo sempre um servidor centralizado (em grande escala, pode haver um servidor Microsoft para enviar e manter o código-fonte do projeto). Porém, com o controle de versão do tipo SVN e TFS, é obrigatório que um servidor seja associado a ele.

Por exemplo, se eu sou um desenvolvedor free-lancer e me reporto diretamente ao meu cliente e não há nenhum outro desenvolvedor envolvido, preciso manter o controle de versão do meu código para reverter (qualquer versão) e confirmar meus códigos, e não tenho orçamento para obter um servidor e não tenho tempo para instalar e usar outro servidor na minha máquina como servidor TFS e cliente TFS. Portanto, a maneira ideal é instalar o mecanismo git e usar minha máquina local como um repositório para o controle de versão pelo git.

GitHub : - como eu disse anteriormente, o git é uma tecnologia e é usado com alguns comandos de comando / shell, ou seja, o git apenas não tem interface do usuário. O GitHub é um produto on-line ou repositório on-line que utiliza a tecnologia git para seus processos e obtém controles de versão juntamente com outras funcionalidades, como rastreamento de bugs, gerenciamento de projetos, gerenciamento de tickets de suporte etc. Em outras palavras, o Git Hub é um invólucro baseado na tecnologia git com uma interface do usuário e outras funcionalidades de outra empresa terceirizada; na verdade, é um produto de propriedade de alguém ou de um grupo baseado na tecnologia git, onde o git é de código aberto e não é comercializável produtos.

VSTS : - O VSTS é um produto da Microsoft para repositório online, mantendo o controle da versão de origem que pode ser tratado como uma alternativa ao hub git. Desde a Microsoft, o VSTS oferece suporte à tecnologia git e ao TFS (controle de versão de base da equipe TFVC). Como o TFS é outro produto antigo da Microsoft para obter esse controle de versão. Normalmente, presumo que o VSTS despejará gradualmente o TFS, pois o git é a tecnologia de destaque nessa área e é de código aberto.


7

Em inglês simples:

  1. Eles são todos controle de origem, como todos sabemos.
  2. Por analogia, se o Git é um computador independente, o GitHub é uma rede de computadores conectados pela Web com sinos e assobiadores.
  3. Portanto, a menos que você abra um acesso ao GitHub e diga especificamente ao VSC ou a qualquer editor para usar o GitHub, você verá o seu código - fonte lá em cima, caso contrário, eles estarão aqui embaixo, na sua máquina local.

0

Git- Git é um software de controle de versão que você instala no seu sistema local. Para um indivíduo que trabalha apenas em um projeto, o Git prova ser um excelente software.

GitHub - Como mencionado anteriormente, o Git é um sistema de controle de versão que rastreia alterações de código, enquanto o GitHub é um serviço de hospedagem de repositório de controle de versão do Git baseado na Web. Ele fornece todas as funcionalidades de controle de versão distribuído e gerenciamento de código-fonte (SCM) do Git, além de incluir alguns de seus próprios recursos.


0

Simplificando, o Git é um sistema de controle de versão que permite gerenciar e acompanhar seu histórico de código-fonte. O GitHub é um serviço de hospedagem baseado em nuvem que permite gerenciar repositórios Git. Se você possui projetos de código aberto que usam o Git, o GitHub foi desenvolvido para ajudá-lo a gerenciá-los melhor.


-3

O Github é necessário se você deseja colaborar entre os desenvolvedores. Se você é um único colaborador, o git é suficiente, faça backup do seu código regularmente

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.