git aggiunge tutto tranne ignorando i file nel file .gitignore


120

Sto aggiungendo il controllo del codice sorgente a un progetto che non ne aveva. Il problema è che ci sono molti file da aggiungere inizialmente a git con un file .gitignore , ma non riesco a capire come aggiungere tutti i file senza includere i file che corrispondono a qualcosa nel file .gitignore .

git add *

Il comando precedente non aggiungerà alcun file perché rileva i file che vengono ignorati da .gitignore .

git add -f *

Il comando precedente aggiungerà tutti i file inclusi i file che desidero ignorare.

Quindi, come faccio ad aggiungere tutti i file mentre continuo ad aderire al file .gitignore ?

Risposte:


251

Penso che tu intenda git add .che aggiungerà tutti i file al repository NON specificati nel .gitignore- puoi vedere queste modifiche digitandogit status

In .bash di solito significa questa directory e tutte le altre directory in modo ricorsivo, quindi se lo fai dal livello inferiore del tuo repository, dovresti aggiungere tutti i file.

Il mio solito flusso di git è creare il .gitignorefile e aggiungere i file di progetto al repository. Proverò il .gitignorefile digitandolo git statusdopo aver importato i file: se vedo i file che ho aggiunto (ad esempio solo .php o .html, NON .mp3 o .mov), puoi git add .aggiungerli tutti e git commit -m "initial commit"a impegnali e dovresti essere pronto.


3
cosa succede se faccio git add --all .qual è la differenza git add .in questo contesto?
Katedral Pillon

2
è lo stesso di git add.
user454232

27
git add .

Questo aggiungerà tutti i percorsi e ignorerà le corrispondenze da .gitignore


13

Prova git add . (che significa "aggiungi tutti i file nella directory corrente e sotto")


5

Un'altra opzione è usare il excludefile del repository Git . Questo file funziona in modo simile a un .gitignorefile ma non viene salvato nel repository.

Dai documenti di Github :

Puoi utilizzare questa tecnica per i file generati localmente che non ti aspetti che altri utenti generino, come i file creati dal tuo editor.

Usa il tuo editor di testo preferito per aprire il file chiamato .git/info/excludeall'interno della radice del tuo repository Git. Qualsiasi regola che aggiungi qui non verrà archiviata e ignorerà solo i file per il tuo repository locale.

  1. In Terminal, vai alla posizione del tuo repository Git
  2. Utilizzando il tuo editor di testo preferito, apri il file .git/info/exclude
  3. Aggiungi regole al excludefile come faresti con il .gitignorefile
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.