Risposte:
Qual è la differenza tra loro?
A tag
è un puntatore a un commit specifico. Questo puntatore può essere caricato con alcune informazioni aggiuntive (identità del creatore del tag, una descrizione, una firma GPG, ...).
A tag
è un concetto git mentre a Release
è GitHub concetto di livello superiore.
Come affermato nel post ufficiale sul blog di GitHub: "I rilasci sono oggetti di prima classe con log delle modifiche e risorse binarie che presentano una storia completa del progetto al di là dei manufatti Git".
A Release
viene creato da un esistente tag
ed espone note di rilascio e collegamenti per scaricare il software o il codice sorgente da GitHub.
Utilizzando l'API di GitHub, non riesco a ottenere l'elenco delle versioni, ma posso ottenere l'elenco dei tag.
La versione corrente dell'API GitHub non espone un modo per gestire Release
s (creare, aggiornare, ...). Sono abbastanza sicuro che questo non dovrebbe richiedere troppo tempo prima che venga esposto.
Tuttavia, al momento è possibile elencare le versioni e i tag di un repository specifico.
Ad esempio, l'URL di seguito elencherà le 6 versioni (a partire da oggi) da ReactiveUI
Considerando che questo elencherà i 54 tag (a partire da oggi) dallo stesso repository
La creazione di una versione è attualmente in corso un processo che comporta un'azione manuale (aggiunta delle note sulla versione, caricamento dei pacchetti, ...). Questo spiega perché gli tag
s non sono visti in modo trasparente come Release
s.
Se vuoi essere informato delle modifiche alle API, puoi iscriverti al blog sulle modifiche alle API di GitHub .
Tuttavia, se non puoi aspettare, la home page dell'API GitHub indica "Se hai problemi o richieste, contatta l'assistenza. ". Questo può essere fatto tramite un'e-mail a support@github.com o questo modulo di contatto .
L'API GitHub ora consente di manipolare Release
s. Vedi l' annuncio .
Release
da un esistente tag
. Release
sono un'aggiunta abbastanza recente. Forse il team di Rails preferisce attenersi al processo corrente e pubblicare sul proprio blog ogni volta che viene rilasciata una nuova versione (vedere l'annuncio 3.2.14 ).
tag
è un concetto git mentre a Release
è GitHub concetto di livello superiore ... A Release
è creato da un esistente tag
ed espone note di rilascio e collegamenti per scaricare il software o codice sorgente da GitHub. "