melhor maneira de registrar modificações locais nos arquivos de configuração de um aplicativo
Geralmente instalo aplicativos no Linux que não vêm em forma de pacote, mas apenas um baixa um tarball, descompacta e executa o aplicativo na pasta explodida. Para ajustar o aplicativo ao meu ambiente, preciso modificar os arquivos de configuração padrão, talvez adicionar um script estranho e eu gostaria de ter uma maneira de registrar todas essas modificações automaticamente, para poder aplicá-las a outro ambiente. Claramente, as modificações não podem ser reproduzidas literalmente, pois coisas como endereços IP ou nome de usuário precisam mudar de sistema para sistema; ainda um registro exaustivo do que foi alterado e adicionado seria útil.
Minha solução é usar um padrão envolvendo git . Basicamente, depois de explodir o tarball, faço um git init e um commit inicial e, em seguida, posso salvar em um arquivo a saída do git diff e um gato de todos os arquivos que aparecem como novos no status do git -s .
Mas tenho certeza de que existem maneiras mais eficientes. ???
Uma combinação de git(ou patch, se você não quiser depender git) e um script bash em que você substitui os nomes de usuário / IP usando alguns sedcomandos deve funcionar. Use manseguido pelo nome do comando para aprender sobre cada um. Em essência, você deseja armazenar as alterações em um repositório git (ou em um arquivo de patch a ser usado patch) e, em seguida, na nova instalação, basta buscar as alterações e executar o script para substituir as informações necessárias. Observe que gittambém pode produzir arquivos de correção.