¿Cómo almacenar configuraciones de aplicaciones en el server?

No está permitido almacenar secretos específicos del cliente en files de configuration de aplicaciones .NET y luego enviarlos a GitHub.

Nos gustaría hacerlo así, los files de configuration siempre están presentes en el server, y solo implementamos la carpeta bin, que luego hace reference a estos files en una location diferente.

MSdeploy tiene una configuration para no tocar los files en el server que se crearon allí. Preferiríamos que pudiéramos seguir eliminando files extra en el server en cada deployment (porque, al no hacerlo, puede mostrar que los comportamientos rotos funcionan) y, por lo tanto, nos gustaría ubicar los files de configuration en un nivel separado de la aplicación.

El atributo configSource no le permite consultar los files que están por debajo del nivel raíz de la aplicación, por lo que mi pregunta es: ¿hay algún buen enfoque para la gestión de configuration en un caso como este? Symlinks es una posible solución aquí, pero afaik, estos también crean un file físico en el disco que MSDeploy eliminaría

En general, esta pregunta gira en torno a github y la gestión secreta del cliente, por lo que también se agradece cualquier sugerencia sobre ese tema.

Por context, estamos tratando de tener un set de equipos completamente geo-distribuidos que trabajen en la misma base de código, y los entornos en los que desplegamos están por todas partes. No queremos ningún secreto en github, y queremos confiar en la continuous integration de estos cambios en los diversos entornos de testing.