Qual é a diferença entre doing (after mkdir repo
e cd repo
):
git init
git remote add origin git://github.com/cmcculloh/repo.git
git fetch --all
git pull origin master
e
git clone git://github.com/cmcculloh/repo.git
Quero dizer, obviamente um é mais curto, mas fora isso eles estão basicamente fazendo a mesma coisa?
git clone
é assim que você obtém uma cópia local de um repositório existente para trabalhar. Geralmente é usado apenas uma vez para um determinado repositório, a menos que você queira ter várias cópias de trabalho dele. (Ou deseja obter uma cópia limpa depois de bagunçar a sua local ...)git pull
(ougit fetch
+git merge
) é como você atualiza essa cópia local com novas confirmações do repositório remoto. Se você estiver colaborando com outras pessoas, é um comando que você executará com freqüência.Como seu primeiro exemplo mostra, é possível emular
git clone
com uma variedade de outros comandos git, mas não é realmente o caso quegit pull
esteja fazendo "basicamente a mesma coisa" quegit clone
(ou vice-versa).fonte
Na linguagem dos leigos, podemos dizer:
fonte
git clone
significa que você está fazendo uma cópia do repositório em seu sistema.git fork
significa que você está copiando o repositório para sua conta do Github.git pull
significa que você está buscando o último repositório modificado.git push
significa que você está retornando o repositório após modificá-lo.No termo leigo:
git clone
está baixando egit pull
está atualizando.fonte
clone : copiando o repositório do servidor remoto para sua máquina local.
pull : obtenha novas alterações adicionadas à sua máquina local.
Essa é a diferença.
O clone é geralmente usado para obter uma cópia de repo remoto.
Pull é usado para visualizar o código adicionado de outros companheiros de equipe, se você estiver trabalhando em equipes.
fonte
O git clone é usado apenas para baixar exatamente o que está atualmente funcionando no repositório do servidor remoto e salvá-lo na pasta da sua máquina onde o projeto está localizado. Principalmente, é usado apenas quando vamos carregar o projeto pela primeira vez. Depois que puxar é a melhor opção.
O git pull é basicamente uma operação (clone (download) + mesclagem) e usada principalmente quando você trabalha como trabalho em equipe. Em outras palavras, quando você deseja as alterações recentes nesse projeto, pode puxar.
fonte
Miss Clone: Recebo uma cópia nova para o local.
Sr. Pull: Eu já o localmente, apenas atualizo.
Miss Clone: Eu posso fazer o que você faz! Você é apenas meu subconjunto.
Sr. Pull: Idem!
Miss Clone: Não, você não cria. Isto é o que eu faço:
Você faz apenas o número 3 e depois mescla, o que eu não preciso fazer (o meu é novo).
Sr. Pull: Calças inteligentes, não é grande coisa, eu vou fazer um "git init" primeiro! Então somos iguais. Além disso, tenho o recurso extra de 'mesclagem' no repositório existente! O que me torna o comando mais usado no Git;)
Criadores de Git: mantenha seus cavalos, Sr. Pull, se --bare ou --mirror for usado com clone ou init, sua fusão não acontecerá. Permanece somente leitura.
fonte
Hmm, o que está faltando para ver o ramo remoto "4.2" quando eu puxo, como faço quando clono? Algo claramente não é idêntico.
vs
fonte
URL do clone git ---> O projeto ou repositório completo será baixado como um diretório separado. e não apenas as alterações git pull URL ---> buscar + mesclar -> Ele buscará apenas as alterações que foram feitas e não o projeto inteiro
fonte
Embora o
git fetch
comando busque todas as alterações no servidor que você ainda não possui, ele não modificará seu diretório de trabalho. Ele simplesmente obterá os dados para você e permitirá que você os mescle. No entanto, existe um comando chamadogit pull
que é essencialmente umgit fetch
imediatamente seguido por umgit merge
na maioria dos casos.Leia mais: https://git-scm.com/book/en/v2/Git-Branching-Remote-Branches#Pulling
fonte
Clone -: Ele criará uma cópia exatamente duplicada do seu projeto de repositório remoto na sua máquina local.
Pull -: Suponha que duas ou mais de duas pessoas estejam compartilhando o mesmo repositório. (Suponha que o nome de outra pessoa seja Syam) (Um repositório é um local em que seu projeto existe no Github) Portanto, se o Syam faz algumas alterações no mesmo projeto no local dele e o envia para o repositório remoto, sejam quais forem as alterações que o Syam fez, essas alterações serão não reflete em seu local. Portanto, para refletir essas novas mudanças no seu local, você deve usar o git pull. No geral, usamos git pull para atualizar o projeto.
Então, basicamente, usamos o git clone apenas uma vez, enquanto usamos o git pull várias vezes.
fonte