Fazendo Alterações Locais
Nesta etapa, você fará alterações no seu repositório local que ainda não foram enviadas (pushed) para o repositório remoto, criando o cenário de "adiantado em relação ao origin" (ahead of origin).
Configurando o Repositório
Primeiro, precisamos configurar um repositório com o qual possamos trabalhar. Usaremos o repositório git-playground como nosso ponto de partida. Como você precisa de permissões de push para completar este laboratório, você precisará criar um fork do repositório primeiro.
Criando um Fork do Repositório
- Visite https://github.com/labex-labs/git-playground no seu navegador
- Clique no botão "Fork" no canto superior direito para criar sua própria cópia do repositório
- Após criar o fork, anote seu nome de usuário do GitHub - você precisará dele para a próxima etapa
Clonando Seu Repositório Forkado
Agora, vamos clonar seu repositório forkado para sua máquina local. Substitua YOUR_USERNAME pelo seu nome de usuário real do GitHub:
cd ~/project
git clone https://github.com/YOUR_USERNAME/git-playground.git
cd git-playground
Após clonar, verifique se o repositório remoto está configurado corretamente:
git remote -v
Você deverá ver uma saída mostrando seu repositório forkado como o remote origin:
origin https://github.com/YOUR_USERNAME/git-playground.git (fetch)
origin https://github.com/YOUR_USERNAME/git-playground.git (push)
Entendendo Repositórios Locais e Remotos
O Git opera com um modelo distribuído onde cada desenvolvedor tem uma cópia completa do repositório em sua máquina local. As alterações feitas localmente precisam ser sincronizadas explicitamente com o repositório remoto.
Agora, vamos verificar o status atual do nosso repositório:
git status
Você deverá ver uma saída semelhante a esta:
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
Isso significa que seu repositório local está atualmente sincronizado com o repositório remoto.
Criando um Novo Arquivo
Vamos criar um novo arquivo em nosso repositório:
echo "This is a new file for our project." > new_file.txt
Após criar o arquivo, precisamos adicioná-lo à área de staging (staging area) do Git:
git add new_file.txt
Agora, vamos commitar este arquivo para o nosso repositório local:
git commit -m "Add new_file.txt"
Você deverá ver uma saída confirmando seu commit:
[master 1a2b3c4] Add new_file.txt
1 file changed, 1 insertion(+)
create mode 100644 new_file.txt
Verificando o Status do Branch
Agora que fizemos um commit local, vamos verificar o status do nosso repositório novamente:
git status
Desta vez, você deverá ver:
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to publish your local commits)
nothing to commit, working tree clean
Esta mensagem indica que seu branch local tem um commit que ainda não foi enviado para o repositório remoto. Esta é exatamente a situação que queríamos criar - seu branch agora está "adiantado em relação ao origin".