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 Releaseviene creato da un esistente taged 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 Releases (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 tags non sono visti in modo trasparente come Releases.
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 Releases. Vedi l' annuncio .
Releaseda un esistente tag. Releasesono 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 taged espone note di rilascio e collegamenti per scaricare il software o codice sorgente da GitHub. "