← All posts
Configura el sellado de tiempo automático en commits de Git en minutos

Configura el sellado de tiempo automático en commits de Git en minutos

timestamp git blockchain proof

Configure el Sellado de Tiempo Automático de Commits de Git en Minutos

Si alguna vez ha intentado demostrar cuándo se escribió un fragmento de código, conoce el baile manual: ejecutar un comando de sellado de tiempo después de cada commit importante, guardar el recibo en un lugar duradero, recordar qué archivos están cubiertos y esperar no haberse saltado el único commit que más tarde se convierte en el centro de una disputa. Es repetitivo, propenso a errores y casi imposible de mantener a lo largo de la vida real de un proyecto.

El sellado de tiempo automático de commits de Git elimina esa carga por completo. Con el servicio gestionado adecuado, se convierte en una configuración única que toma minutos, no en una tarea continua. Timestamp GIT ofrece exactamente eso: una GitHub App que ancla los hashes de sus commits a la blockchain de Bitcoin cada noche, sin que usted toque una CLI ni gestione archivos de recibo.

Este artículo recorre la configuración, el pipeline automatizado, la supervisión y las mejores prácticas para que pueda configurarlo y olvidarse.


La Tarea Repetitiva que Puede Eliminar

Los flujos de trabajo tradicionales de sellado de tiempo obligan a los desarrolladores a un bucle de pasos manuales:

Esto es frágil. Los humanos olvidan. Los recibos se pierden. Toda la idea de demostrar “escribí este código en esta fecha” se derrumba cuando el proceso depende de la memoria y la disciplina.

Podría ejecutar usted mismo el protocolo OpenTimestamps subyacente, pero eso implica crear scripts alrededor de comandos de CLI, gestionar recibos y rastrear confirmaciones de blockchain. Esa es la vía difícil, y es precisamente lo que Timestamp GIT elimina.

Timestamp GIT automatiza cada paso: una vez instalada la GitHub App, cada commit en un repositorio supervisado se recopila, se agrupa y se ancla en Bitcoin cada noche. Usted nunca ejecuta un comando, gestiona un recibo ni recuerda sellar nada. Es sellado de tiempo automático de commits de Git en el sentido más estricto.

Para un recorrido detallado de la instalación en sí, consulte Instalar una GitHub App para el Sellado de Tiempo Automático de Código. Este artículo se centra en la configuración de extremo a extremo y la automatización que se ejecuta después.


Configuración Única: Conecte su Repositorio

La configuración toma unos minutos. Este es el flujo:

  1. Instale la GitHub App de Timestamp GIT desde GitHub Marketplace.
  2. Seleccione los repositorios que desea supervisar. Se admiten repositorios públicos o privados según su plan.
  3. Elija su modelo de permisos:
    • Modo estándar: La GitHub App requiere acceso de solo lectura al repositorio de origen. Lee únicamente el hash del commit HEAD, nunca el contenido de los archivos.
    • Modo Enterprise ZK: Sin acceso de lectura al código fuente en absoluto. Una GitHub Action en su infraestructura envía únicamente el hash del commit a la API de Timestamp GIT. Su código fuente nunca sale de su entorno.
  4. Confirme la instalación.

Después de eso, no hay más pasos manuales. El sistema observa el repositorio, detecta nuevos commits automáticamente y ejecuta el pipeline de sellado de tiempo cada noche.

Si se autoaloja mediante la imagen de Docker, un asistente de configuración lo guía para conectar la GitHub App y configurar la instancia. Para la mayoría de los equipos, la GitHub App SaaS es la vía más rápida.


El Pipeline Automatizado: Del Commit al Ancla de Bitcoin

Esto es lo que sucede después de conectar un repositorio:

Agrupación nocturna

Cada hash de commit se almacena en una cola en memoria a medida que llega. Cada noche, un worker se ejecuta y agrupa todos los hashes pendientes de cada repositorio. Crea archivos de manifiesto (.txt), construye un árbol de Merkle de forma nativa y genera pruebas de OpenTimestamps utilizando calendarios públicos.

La raíz de Merkle del lote diario se ancla luego en un bloque de Bitcoin mediante el protocolo OpenTimestamps. Una vez confirmada en la blockchain, el sello de tiempo se vuelve inmutable: ninguna entidad, incluida Timestamp GIT, puede alterarlo o falsificarlo.

Entrega de pruebas

Después de que el ancla se confirma (normalmente alrededor de 3 horas), Timestamp GIT envía el manifiesto y los archivos de recibo .ots de vuelta a su repositorio en una rama dedicada timestamps o en un repositorio espejo. No tiene que recuperar nada manualmente; la prueba se versiona junto a su código.

Modo Enterprise ZK en 12 líneas

Si no puede otorgar acceso de lectura a su código fuente, el modo Enterprise ZK utiliza una GitHub Action que se ejecuta en su infraestructura. Envía únicamente el hash del commit a la API. Aquí tiene un ejemplo mínimo funcional:

name: Timestamp commit hash
on: [push]
jobs:
  anchor:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: |
          curl -X POST "https://timestampgit.dev/api/timestamp/${{ github.repository }}/${{ github.ref_name }}/${{ github.sha }}/${{ secrets.TIMESTAMPGIT_HMAC }}"

Esa es toda la action. La plantilla real se proporciona durante la configuración de Enterprise ZK, pero el principio es simple: envíe el ID del commit y un HMAC firmado a la API, y nada más sale de su entorno.

API REST para estado, verificación y auditoría

La automatización se extiende a los informes. Los endpoints públicos le permiten consultar el estado de la prueba sin iniciar sesión en un panel:

# Información del último bloque de Bitcoin anclado
curl https://timestampgit.dev/api/statusLast/your-org/your-repo

# Recuento total de commits comprometidos/sellados
curl https://timestampgit.dev/api/statusCount/your-org/your-repo

# Resumen combinado para insignias de Shields.io
curl https://timestampgit.dev/api/statusSummary/your-org/your-repo

# Descargar el libro de auditoría completo como CSV
curl -O https://timestampgit.dev/api/audit/your-org/your-repo

# Descargar certificado PDF para una fecha específica
curl -O https://timestampgit.dev/api/report/your-org/your-repo/2026-08-19

Para repositorios privados, estas URL incluyen un HMAC cifrado específico de su instancia, de modo que solo los usuarios autorizados pueden acceder al estado. Todo esto es automático: no se requiere intervención del desarrollador.


Supervisión y Gestión de Fallos

Una vez que el pipeline está en marcha, necesita visibilidad sobre el estado de las pruebas y una forma de detectar problemas.

Panel de estado público

Cada repositorio obtiene un panel público en https://timestampgit.dev/status/{user}/{repo}. Muestra:

También puede descargar un CSV de auditoría y un certificado PDF para cualquier fecha. Son útiles para el cumplimiento normativo y el mantenimiento de registros sin conexión.

Insignias de verificación integrables

Timestamp GIT proporciona fragmentos de insignias que puede pegar en su README. La insignia muestra el estado de verificación en vivo y enlaza a una página de verificación pública donde cualquiera puede inspeccionar la cadena de Merkle. La página realiza todos los cálculos localmente en el navegador: verificación de conocimiento cero.

Gestión de retrasos y días perdidos

La confirmación de Bitcoin lleva tiempo, normalmente alrededor de 3 horas. El sistema gestiona este retraso automáticamente; su prueba se escribe una vez que el ancla se confirma. Si hace commit después del corte nocturno, el hash se incluye en el lote del día siguiente.

Si un día no tiene commits, no se genera ningún sello de tiempo para ese día. Las pruebas existentes siguen siendo válidas; el sistema simplemente omite el lote vacío.

Para repositorios privados, las URL firmadas con HMAC protegen el acceso a las páginas de estado y verificación. Solo las personas con el HMAC correcto pueden ver el estado de la prueba.


Mejores Prácticas para un Sellado de Tiempo Fiable

Para sacar el máximo partido al sellado de tiempo automático de commits de Git, siga estas pautas:


Preguntas Frecuentes

¿Cómo funciona el sellado de tiempo automático de commits de Git?

Timestamp GIT utiliza una GitHub App para detectar nuevos commits automáticamente. Cada noche, recopila los hashes de los commits, construye un árbol de Merkle y ancla la raíz en la blockchain de Bitcoin mediante OpenTimestamps. Los recibos de prueba (archivos .ots) se envían de vuelta a su repositorio, proporcionando evidencia inmutable de existencia.

¿Mi código fuente queda expuesto alguna vez a Timestamp GIT?

No. En el modo estándar, la GitHub App solo lee los hashes de los commits, no el contenido de los archivos. En el modo Enterprise ZK, una GitHub Action en su infraestructura envía únicamente hashes a la API, por lo que su código fuente nunca sale de su entorno.

¿Qué sucede si pierdo un día de commits?

Si no se realizan commits en un día determinado, no se genera ningún sello de tiempo para ese día. El sistema ancla solo los hashes de los commits que ocurrieron. Sus pruebas existentes siguen siendo válidas y los commits futuros se sellarán automáticamente.

¿Puedo verificar los sellos de tiempo sin depender de los servidores de Timestamp GIT?

Sí. Los archivos de recibo .ots se pueden verificar de forma independiente utilizando herramientas estándar de OpenTimestamps contra la blockchain de Bitcoin. Timestamp GIT también proporciona una página de verificación basada en navegador que realiza todos los cálculos localmente.


Configúrelo y Olvídese

El sellado de tiempo automático de commits de Git convierte una tarea tediosa y propensa a errores en un proceso en segundo plano. Instala la GitHub App una vez, conecta sus repositorios y cada commit se ancla a Bitcoin cada noche: sin comandos manuales, sin gestión de recibos, sin recordatorios.

Timestamp GIT es el servicio gestionado que lo hace posible. Oculta la complejidad de OpenTimestamps detrás de una GitHub App limpia, entrega las pruebas directamente a su repositorio y le proporciona paneles, insignias y APIs para la verificación. ¿Listo para empezar? Instale la GitHub App, conecte un repositorio y deje que comience el anclaje nocturno.


Publicaciones relacionadas

EU label: AI-generated content