2016-04-21 18 views
8

sto cercando qualcosa di simile di seguito:Come aggiungere file di project.lock.json a gitignore

#DNX 
project.lock.json 

e

*.lock.json 

ma non sembra ignorare questi file.

+1

Il file 'project.lock.json' è già stato tracciato da' git'? – axiac

+0

Viene visualizzato (nella lista delle modifiche in sospeso) tutto il tempo ogni volta che cambio qualcosa nel mio progetto e lo compilo. Non voglio impegnarli così volevo aggiungerli al file gitignore. – tavier

+2

Possibile duplicato di [Making git "forget" su un file che è stato tracciato ma ora è in .gitignore] (http://stackoverflow.com/questions/1274057/making-git-forget-about-a-file-that- was-tracked-but-is-now-in-gitignore) – axiac

risposta

12

Se il file è già rintracciato a git, è necessario prima rimuoverlo (fisicamente il file deve essere collocato fuori dalla cartella git per il tempo), confermare le modifiche e aggiungere nuovamente il file alla cartella. Allora git inizierà a ignorarlo usando le tue istruzioni.

+11

Oppure puoi lasciare il file dove è, ma rimuoverlo dall'indice usando 'git rm --cached project.lock.json'. La soluzione suggerita da questa risposta funziona anche, ma devi ancora eseguire 'git rm project.lock.json' o' git add project.lock.json' prima di eseguire il commit (per inserire la cancellazione nell'elenco delle modifiche da eseguire) . – axiac

+4

Se si hanno diversi progetti, usare 'git rm -r --cached * .lock.json' nella directory root (soluzione) per rimuovere il file project.lock.json in tutte le sottocartelle dall'indice. –

1

da https://docs.microsoft.com/en-us/nuget/schema/project-json:

Il file project.lock.json viene generato nel processo di ripristino pacchetti Nuget in progetti che utilizzano project.json. Contiene uno snapshot di tutte le informazioni generate mentre NuGet traccia il grafico dei pacchetti e include la versione, i contenuti e le dipendenze di tutti i pacchetti nel progetto. Il sistema di build lo utilizza per scegliendo i pacchetti da una posizione globale che sono rilevanti quando si crea il progetto anziché in base a una cartella di pacchetti locale nel progetto . Ciò si traduce in prestazioni di build più veloci perché è necessario per leggere solo project.lock.json invece di molti file .nuspec separati .

La project.lock.json viene generato automaticamente sulla confezione ripristino, quindi può essere omesso dal controllo di origine aggiungendolo .gitignore e .tfignore file. Tuttavia, se lo includi nel controllo del codice sorgente, la cronologia delle modifiche di mostrerà le modifiche nelle dipendenze risolte nel tempo.