GNU/Linux >> Tutoriales Linux >  >> Linux

¿Seguimiento de los cambios de Crontab con Git?

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.


Linux
  1. Ordenarse con ordenar en la línea de comando

  2. ¿Ejecutar una línea de comandos con un Sudo?

  3. ¿Contar los caracteres de cada línea con Wc?

  4. línea de inserción sed con espacios a una línea específica

  5. Reemplace el usuario gitolite3 con git

Primeros pasos con GIT en Linux

Comando Diff en Linux con ejemplos

Seguimiento del tiempo con Timewarrior en la línea de comandos

Entendiendo Crontab en Linux con ejemplos

Instalación y primeros pasos con Git

Cómo controlar versiones con Git en la línea de comando