Git adicione todos os arquivos modificados

Git adicione todos os arquivos modificados
Quando você está lidando com o Git Add, você tem várias opções para adicionar todos os arquivos modificados. Vejamos alguns cenários para entender as possibilidades.

Vamos inicializar um novo projeto.

Projeto $ mkdir
$ CD Project
$ git init
Repositório Git vazio inicializado em/usuários/zakh_eecs/_work/learngit/git_add/project//.git/
$ echo "novo projeto"> readme.TXT
$ git add readme.TXT
$ git Commit -m "Commits inicial"
[Mestre (Compromisso Raiz) 47B9AF1] Commiti
1 arquivo alterado, 1 inserção (+)
Criar modo 100644 ReadMe.TXT

Neste projeto, adicionamos um readme.arquivo txt. Usamos o comando "git add" para adicionar o readme.TXT. O comando add não é apenas para adicionar arquivos. Ele também adiciona qualquer modificação de arquivo. Para este tutorial, apenas adicionaremos e excluiremos arquivos para simplificar. Mas pense no comando add como adicionando alterações à área de estadiamento. Em seguida, você deve usar o comando commit para tornar as mudanças oficiais.

Quando você está lidando com muitos arquivos e pastas, é difícil adicionar individualmente cada alteração. Então você pode usar os seguintes comandos:

$ git add .
$ git add -a

Vejamos como os dois comandos se comportam:

$ toque a.txt b.txt c.TXT
$ git add .
$ git status
No mestre da filial
Mudanças a serem comprometidas:
(Use "Git Reset Head…" para se soltar)
Novo arquivo: um.TXT
Novo arquivo: B.TXT
Novo arquivo: C.TXT
$ git Commit -m "Adicione um.txt, b.txt, c.TXT"
[Master 9CA90FC] Adicionar um.txt, b.txt, c.TXT
3 arquivos alterados, 0 inserções (+), 0 deleções (-)
Criar modo 100644 A.TXT
Criar modo 100644 b.TXT
Criar modo 100644 c.TXT
$ touch x.txt y.txt z.TXT
$ git add -a
$ git status
No mestre da filial
Mudanças a serem comprometidas:
(Use "Git Reset Head…" para se soltar)
Novo arquivo: x.TXT
Novo arquivo: y.TXT
Novo arquivo: z.TXT
$ git Commit -m "Add x.txt, y.txt, z.TXT"
[Mestre 8AF8C12] Adicione x.txt, y.txt, z.TXT
3 arquivos alterados, 0 inserções (+), 0 deleções (-)
Criar modo 100644 x.TXT
criar modo 100644 y.TXT
Criar modo 100644 z.TXT

Ambas as opções parecem funcionar da mesma forma.

Para investigar ainda mais, vamos criar uma situação em que adicionamos algo no nível raiz do diretório de trabalho e adicione mais arquivos em uma pasta:

$ toque 1.TXT
$ mkdir novo
$ CD novo
$ touch m.txt n.txt o.TXT
$ git add .
$ git status
No mestre da filial
Mudanças a serem comprometidas:
(Use "Git Reset Head…" para se soltar)
Novo arquivo: M.TXT
Novo arquivo: n.TXT
Novo arquivo: O.TXT
Arquivos não rastreados:
(Use "git add…" para incluir no que será comprometido)
… /1.TXT

AVISO Git não adicionou o 1.arquivo txt na pasta de nível superior.

Se criamos uma pasta chamada aninhada com D.arquivo txt e use o git add. comando novamente, vemos que o.txt foi adicionado apenas 1.txt ainda não foi adicionado.

$ mkdir aninhado
$ touch aninhado/d.TXT
$ git add .
$ git status
No mestre da filial
Mudanças a serem comprometidas:
(Use "Git Reset Head…" para se soltar)
Novo arquivo: M.TXT
Novo arquivo: n.TXT
Novo arquivo: aninhado/d.TXT
Novo arquivo: O.TXT
Arquivos não rastreados:
(Use "git add…" para incluir no que será comprometido)
… /1.TXT

Agora vamos usar o comando git add -a:

$ git add -a
$ git status
No mestre da filial
Mudanças a serem comprometidas:
(Use "Git Reset Head…" para se soltar)
Novo arquivo:… /1.TXT
Novo arquivo: M.TXT
Novo arquivo: n.TXT
Novo arquivo: aninhado/d.TXT
Novo arquivo: O.TXT

Agora, 1.txt na pasta foi adicionado à área de estadiamento.
Veja como as pastas parecem

projeto
|--1.TXT
| --ReadMe.TXT
| --a.TXT
|--b.TXT
|--c.TXT
| --x.TXT
|--y.TXT
| --z.TXT
'-- novo
|--m.TXT
|--n.TXT
| --o.TXT
'- aninhado
|--d.TXT

Então, quando você está usando “add add .”Comando, ele adicionará todas as alterações desse nível. Mas quando você usa a opção “Git add -a”, ele procurará modificações em todo o módulo e adicione -as.

Conclusão

Comando add git fornece maneiras poderosas de adicionar arquivos modificados. Você pode usar seus códigos hierarquia de diretório natural para controlar o que é adicionado.

Um estudo mais aprofundado:

  • https: // git-scm.com/docs/git-add
  • Git: Aprenda Controle de Versão com Git: Um Guia de Iniciantes de Ultimate Passo a Passo
  • Controle de versão com Git: ferramentas e técnicas poderosas para desenvolvimento de software colaborativo
  • Pro Git, 2ª edição