ForHosting KIT · Strumenti per sviluppatori

Accorci un hash di commit Git alla lunghezza desiderata

Questo strumento per hash brevi dei commit Git riceve un identificatore di oggetto SHA-1 o SHA-256 completo e restituisce esattamente il numero richiesto di caratteri esadecimali iniziali.

● BetaGratis · nel tuo browser
Usalo da WebAPIEmailTelegramApp presto

È utile quando l’identificatore intero è troppo lungo per un’etichetta di rilascio, una schermata di build, un riepilogo dei log o una nota di distribuzione. L’operazione è deterministica, conserva maiuscole e minuscole fornite e rifiuta una lunghezza superiore a quella del hash completo.

Crei un identificatore breve e prevedibile

Gli identificatori degli oggetti Git sono precisi, ma la loro rappresentazione esadecimale completa può risultare scomoda nelle interfacce compatte e nei documenti destinati alla lettura. Questa capacità accetta un hash di commit SHA-1 completo di 40 caratteri oppure SHA-256 di 64 e restituisce il numero di caratteri iniziali richiesto da Lei. È il formato convenzionale con cui Git mostra un nome di oggetto abbreviato. Poiché la lunghezza viene scelta esplicitamente, il risultato non cambia in base alle dimensioni del repository, alla configurazione locale o al computer che esegue un comando. Un flusso di rilascio può usare sempre 12 caratteri, mentre un indicatore stretto può usarne 8. La risposta contiene il valore abbreviato e la lunghezza applicata, così è semplice verificarla prima di inserirla in un altro sistema. Viene mantenuta la capitalizzazione originale e non occorre clonare alcun repository: il valore viene soltanto convalidato e tagliato al prefisso indicato.

Scelga la lunghezza considerando il rischio di collisione

Un hash breve è un’abbreviazione, non un nuovo identificatore di commit. I prefissi più corti sono facili da leggere, ma hanno maggiori probabilità di corrispondere a più oggetti quando il repository cresce. Git può calcolare l’abbreviazione univoca più corta esaminando gli oggetti disponibili; questo strumento non può garantirne l’unicità perché riceve un solo hash e non consulta alcun repository. Scelga una lunghezza adatta al contesto e al numero previsto di oggetti. 7 o 8 caratteri possono essere comodi per un progetto piccolo, mentre 12 o più offrono un margine maggiore per cronologie ampie e archivi di build conservati a lungo. Se un comando successivo deve risolvere il valore in un repository, verifichi lì che il prefisso non sia ambiguo. La capacità impedisce un errore preciso: richiedere più caratteri di quelli disponibili nel hash completo. Inoltre accetta soltanto un identificatore SHA-1 o SHA-256 integrale, non un valore già abbreviato.

Usi la stessa abbreviazione in ogni automazione

L’abbreviazione a lunghezza fissa è utile quando più strumenti devono etichettare la stessa revisione in modo coerente. Un processo di integrazione continua può ricevere lo SHA completo dal proprio fornitore, applicare la lunghezza standard del progetto e riutilizzare il risultato nei nomi degli artefatti, nei tag dei container, nelle annotazioni di distribuzione o nei report dei test. Gli script di rilascio possono affiancarlo a una versione semantica senza incorporare comandi Git specifici dell’ambiente. I sistemi di monitoraggio e assistenza possono mostrare un riferimento compatto mantenendo il hash completo nei metadati. Poiché l’algoritmo esegue solo la convalida e il taglio del prefisso, input identici producono sempre output identici nel browser e tramite API. Non usa rete, repository, casualità o dati temporali. Quando serve un’identità esatta tra repository, fork o archivi, conservi anche l’identificatore completo come riferimento autorevole.

Etichettare gli artefatti di build

Crei suffissi di revisione a larghezza fissa per pacchetti, archivi e risultati di build partendo dallo SHA completo fornito dalla CI.

Annotare le distribuzioni

Mostri un prefisso di commit leggibile nei pannelli di distribuzione e nelle note di rilascio, conservando altrove il hash completo.

Uniformare i riferimenti nei log

Applichi una lunghezza di abbreviazione esplicita in tutti i servizi per confrontare facilmente le revisioni.

Quanto costa?

Il prezzo della API è $0.002 per richiesta. La stessa operazione deterministica può essere eseguita nel browser da questa pagina.

Quali formati di hash Git sono accettati?

L’input deve essere un identificatore esadecimale SHA-1 completo di 40 caratteri oppure SHA-256 completo di 64.

Un hash breve identifica un commit in modo univoco?

Non automaticamente. L’unicità dipende dagli altri oggetti del repository specifico, che questa capacità non esamina.

Che cosa accade se la lunghezza richiesta è eccessiva?

La richiesta non riesce e restituisce un errore di input non valido con la lunghezza richiesta e quella disponibile.

Lo strumento converte in minuscolo le lettere esadecimali maiuscole?

No. Convalida l’input esadecimale e conserva esattamente maiuscole e minuscole del prefisso fornito.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/dev/commit-hash-short-form

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/dev/commit-hash-short-form \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"commit_hash":"8f14e45fceea167a5a36dedd4bea2543d2f6b721","length":12}'
{
  "commit_hash": "8f14e45fceea167a5a36dedd4bea2543d2f6b721",
  "length": 12
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.commit_hash_short_form",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Leggi la documentazione completa del KIT →