Return to Video

Local Copies of Remote Branches Solution - How to Use Git and GitHub

  • 0:00 - 0:03
    Para responder a essa pergunta, vamos pensar
    nos commits que estavam presentes no
  • 0:03 - 0:06
    GitHub e em seu repositório local
    antes e depois do git fetch.
  • 0:07 - 0:09
    Quando você clonou o repositório,
  • 0:09 - 0:12
    o último commit contido nele era o
    commit de Larry que adicionava a receita de chili.
  • 0:12 - 0:15
    Então, esse também ficou sendo o último
    commit em seu repositório local.
  • 0:15 - 0:17
    Claro, havia outros
    commits, mas
  • 0:17 - 0:20
    vou deixá-los de fora aqui
    por causa do espaço.
  • 0:20 - 0:22
    Agora você criou um commit
    para adicionar new spice,
  • 0:22 - 0:26
    então esse commit também está presente
    em seu repositório local.
  • 0:26 - 0:28
    E é nele que se encontra seu branch master.
  • 0:28 - 0:32
    origin/master ainda aponta para
    o commit que estava no remoto
  • 0:32 - 0:33
    no momento da clonagem.
  • 0:33 - 0:37
    Depois que você o clonou, Sarah acrescentou
    o commit cumin no GitHub,
  • 0:37 - 0:40
    mas seu branch origin/master
    ainda não refletirá isso.
  • 0:40 - 0:43
    Portanto, este é o
    estado do master no GitHub.
  • 0:43 - 0:44
    E este era o estado dos
  • 0:44 - 0:47
    dois repositórios imediatamente
    antes de você executar git fetch.
  • 0:47 - 0:52
    Se você executou git log origin/master,
    deve ter visto que o commit de Larry
  • 0:52 - 0:56
    que adicionava a receita de chili estava presente,
    mas seu commit que adicionava um novo tempero e
  • 0:56 - 1:00
    o commit de Sarah que excluía cumin
    não estavam presentes no branch origin/master.
  • 1:00 - 1:04
    Se você executou git status, deve ter visto
    que seu branch estava um commit
  • 1:04 - 1:06
    à frente de origin/master.
  • 1:06 - 1:11
    Isso faz sentido, pois git log e git status
    são executados sem acesso à Internet.
  • 1:11 - 1:13
    Suponha que você estivesse em algum lugar
    sem acesso à Internet quando
  • 1:13 - 1:14
    executou esses comandos.
  • 1:14 - 1:19
    O repositório git local não teria
    qualquer ideia da existência do commit cumin.
  • 1:19 - 1:21
    Claro, o commit cumin
    não seria mostrado ao executar
  • 1:21 - 1:23
    git log origin/master.
  • 1:24 - 1:28
    E o git status não saberia que seus
    branches estavam, na verdade, fora de sincronia.
  • 1:28 - 1:31
    Ele acha que seu
    branch está mais à frente.
  • 1:31 - 1:35
    Agora, quando você executa git fetch,
    o git busca o commit cumin e
  • 1:35 - 1:38
    atualiza o branch origin/master
    para que ele aponte para o novo commit.
  • 1:38 - 1:42
    Seu master local ainda aponta para
    o commit new spice, como antes.
  • 1:42 - 1:46
    Então, neste momento, você tem
    uma cópia local do commit cumin salva
  • 1:46 - 1:48
    e pode acessá-la via git log.
  • 1:48 - 1:52
    Se você executar git log agora,
    verá o commit cumin
  • 1:52 - 1:54
    e o commit chili.
  • 1:54 - 1:57
    Mas ainda não verá seu
    novo commit spice, pois ele está
  • 1:57 - 1:58
    apenas em seu branch master local.
  • 1:58 - 2:00
    Como o origin/master e o
  • 2:00 - 2:03
    master têm um commit que
    não está presente no outro,
  • 2:03 - 2:07
    git status mostrará que seu branch
    está fora de sincroniza com origin/master.
Title:
Local Copies of Remote Branches Solution - How to Use Git and GitHub
Description:

more » « less
Video Language:
English
Team:
Udacity
Project:
UD775 - How to Use Git and GitHub
Duration:
02:08

Portuguese, Brazilian subtitles

Revisions Compare revisions