2011-09-30 3 views
16

Eventuali duplicati:
gitignore without binary filesCome fare a .gitignore ignora i file compilati senza estensione?

Edit: Dupe di gitignore without binary files

Quando si compila, per esempio, un file di Haskell, (test.hs), utilizzando ghc --make test.hs, il risultato è test.hi e test. Voglio solo aggiungere e commettere la fonte test.hs, mantenendo test.hi e test dal repository ma nella stessa directory del file di origine. test è il problema, come si specifica a .gitignore per ignorare un file compilato senza estensione?

+2

'echo" * .a ">> .gitignore' e compile con' ghc --osuf a --make test.hs' –

+0

Grazie a @Eric Wilson, ho cercato per primo ma non l'ho visto. – Kurtosis

+1

@KingCrunch, heh, sì ma preferisco il pigro 'git add.' quando possibile. – Kurtosis

risposta

6

Basta aggiungere il nome file al file .gitignore. Per esempio:

$ git ls-files --other --exclude-standard 
test 
$ echo test > .gitignore 
$ git ls-files --other --exclude-standard 
$ 

.gitignore non si preoccupa estensioni. Si abbina solo ai modelli.

+4

Grazie, considerato questo, ma io sono all'inizio del progetto che avrà molti di questi nomi di file. Ricorrerà a ciò se non ci fosse l'opzione migliore. PS: non conoscevo il comando ls-files, anche se quando lo eseguo include ancora i file .hs e .txt nell'output. Verificherà la pagina man e giocherà un po 'con essa. – Kurtosis

+0

Ho appena usato 'ls-files' perché l'output è meno dettagliato, che è bello per questo particolare esempio. Se non riesci a identificare i file per nome o per modello, sei praticamente sfortunato. Se è possibile inserire tutti i file di output in una directory specifica, è possibile ignorare la directory oppure è possibile generare in modo programmatico il file '.gitignore' come parte del processo di creazione. – larsks