Me gustaría usar git
para realizar un seguimiento de los cambios en crontab
.
He inicializado un nuevo repositorio de git en /var/spool/cron/crontabs/
Ahora el problema es que, cuando se guarda crontab, la segunda línea del encabezado cambia porque contiene la marca de tiempo.
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.ubNueW/crontab installed on Thu Aug 1 06:29:24 2019)
¿Cuál sería la forma más fácil de ignorar estos cambios irrelevantes?
La posible pregunta duplicada no aborda el punto principal de mi pregunta:cómo ignorar las primeras 2 líneas irrelevantes de crontab. En cambio, aborda algunas otras preguntas que no he hecho, como algunos ganchos.
Respuesta aceptada:
Podrías usar un filtro:
git config filter.dropSecondLine.clean "sed '2d'"
Edite/cree .git/info/attributes y agregue:
* filter=dropSecondLine
Si no desea que el filtro actúe en todos los archivos del repositorio, modifique el * para que coincida con un patrón o nombre de archivo apropiado.
El efecto será que el directorio de trabajo seguirá siendo el mismo, pero los blobs del repositorio no tendrán la segunda línea en los archivos. Entonces, si lo tira hacia abajo en otro lugar, la segunda línea no aparecerá (el resultado del sed 'd2'). Y si cambia la segunda línea de su archivo de registro, podrá agregarlo, pero no confirmarlo, ya que el cambio en el blob ocurre al agregar, momento en el que será el mismo archivo que el del repositorio.