Mantieni git – file non modificati – tra i checkout dei branch

Sto usando git --assume-unchanged yacs/settings/development.py per ignorare il mio file di configurazione del database locale nel mio ramo dev. Ma quando voglio cambiare rami (per le distribuzioni), ottengo un errore che ho ancora modifiche in sospeso:

 % git checkout production error: Your local changes to the following files would be overwritten by checkout: yacs/settings/development.py Please, commit your changes or stash them before you can switch branches. Aborting 

Che è fastidioso L’unico modo in cui so come aggirare questo sarebbe quello di riporlo:

 % git stash % git checkout production % git merge dev % ./deploy.sh % git checkout dev % git stash pop # On branch dev # Changes not staged for commit: # (use "git add ..." to update what will be committed) # (use "git checkout -- ..." to discard changes in working directory) # # modified: yacs/settings/development.py # 

Ma ora è di nuovo nell’indice (ugh)! C’è un’alternativa migliore a questo stream di lavoro?

[Non mi interessa particolarmente se le modifiche locali rimangono localmente (ovvero, è ok se si tratta del ramo di produzione), semplicemente non voglio che venga trasferito su un repository remoto.]