Penso che ci siano situazioni in cui ignorare il .gitignore è molto utile. Ad esempio, quando si hanno più team o un team di grandi dimensioni che lavora sulla stessa base di codice. In tal caso, è necessario disporre di determinate convenzioni, una di quelle convenzioni riguarda ciò che viene ignorato nel repository git. Di solito si tratta di ignorare file e directory creati da IDE o OS, alcuni registri generati, ecc.
Tuttavia, esiste una forza che tende a introdurre modifiche non convenzionali al .gitignore
file. Il .gitignore
file può essere ulteriormente modificato da una persona irresponsabile, per errore, da uno strumento utilizzato o in qualche altro caso.
Per avere una contro-forza in questo, possiamo fare come segue:
- Il .gitignore iniziale dovrebbe riflettere la convenzione nelle squadre,
- Dopo averlo spinto, il .gitignore dovrebbe essere protetto aggiungendo la voce .gitignore e spingendo di nuovo quel cambiamento. Il
.gitignore
file viene " sigillato " in questo modo.
Il file " sigillato " .gitignore
può essere modificato, solo localmente, senza propagare i cambiavalute agli altri membri del team. Tuttavia, se un cambiamento è ampiamente concordato in tutto il / i gruppo / i di quanto sia possibile "annullarlo", modificarlo e "sigillarlo" di nuovo. Ciò non può essere fatto per errore, solo intenzionalmente.
Purtroppo, non puoi essere protetto al 100% dalla stupidità, ma in questo modo hai fatto tutto il possibile per impedire che accadessero cose stupide.
Se hai una squadra relativamente piccola con ottimi professionisti, questo non sarebbe importante, ma anche quei ragazzi apprezzerebbero avere una cosa in meno di cui preoccuparsi.
L'utilizzo .git/info/exclude
è interessante quando non è possibile eseguire alcuna operazione sulle impostazioni dell'infrastruttura, semplicemente coprendo il proprio ** per non commettere errori.
Da un punto di vista di ciò che è giusto e di ciò che è sbagliato, voto per avere la voce .gitignore all'interno del .gitignore
file, dando a tutti la libertà di fare localmente quello che vogliono, ma non invadere gli altri.
git add self && git commit -m "-1 for reverting existential depression" && git remote rm HEAD