Supponiamo di aver creato un widget e decido di condividerlo con Github. In questo progetto di widget, c'è un file di configurazione / preferenze. Devo condividere i valori impostati, in modo che se qualcun altro desidera il proprio widget, saprebbe cosa impostare. Ma non necessariamente voglio o devo condividere le mie impostazioni.
Questo sarebbe un caso in cui alcune / tutte le impostazioni non hanno alcun concetto di 'default' - devono essere tutte esplicitamente impostate dal programmatore.
Pensavo di trovare una risposta in questa domanda , ma in realtà questo (o almeno le sue risposte) sono più focalizzati a mantenere le cose segrete. Non ho bisogno di condividere in sicurezza - non ho bisogno di condividere.
In sostanza, ho bisogno di distribuire Foo := 'Bar'
, ma commit / push / share Foo :=
.
Qual è il modo migliore di gestirlo in Git?
Alcune possibili soluzioni:
- Conferma il file non popolato; non includere nei successivi commit con le preferenze impostate. Svantaggio: se aggiungo una nuova impostazione in un secondo momento, è necessario rimuovere tutti i valori per eseguirne il commit e quindi impostarli nuovamente.
- Imposta i valori per importazione / inclusione (come applicabile per la lingua) per garantire un errore immediato (e meno confuso di quanto potrebbe essere altrimenti); indicare chiaramente i requisiti in un readme. Svantaggio: nessuno ama gli errori.
- Filiali? Non ho mai avuto davvero bisogno di usare più, ma ho un sentimento il modo 'giusto' per fare questo potrebbe essere un ramo 'deploy' non spinto con i valori impostati e non impostati nel ramo "master" premuto; basta gestire i conflitti di fusione che si presentano all'aggiunta di nuove proprietà? Può essere? Lo stesso svantaggio di (1) in realtà, ma forse è la pratica migliore?