2016-03-21 2 views
1

Auf Github begehen sind, wenn Sie auf die Seite zugreifen, entsprechend einem Commit - like this - Sie sehen, können die folgenden:GitHub: Tags, die eine spezifische

Commit page

Ich stelle mir vor, dass neben dem Zweig (master) Die Seite zeigt die Repository-Tags, die diesen spezifischen Commit enthalten (in diesem Fall: 4.8.0, 4.7.1, 4.7.0, 4.6.2, 4.6.1 und 4.6.0).

Gibt es eine Möglichkeit, auf diese Informationen über die GitHub-REST-API oder über GIT-Befehlszeilentools zuzugreifen?

+1

Nach dem Repository Klonen 'git tag --contains wie in Antwort a5a5f612e' http://stackoverflow.com/a/7923114/5781248 –

Antwort

1

Gibt es eine Möglichkeit, auf diese Informationen über die GitHub-REST-API oder über GIT-Befehlszeilentools zuzugreifen?

Sie können eine Liste aller Ihrer Tags auf verschiedene Arten erhalten.


GitHub API

Holen Sie sich einen Tag
GET /repos/:owner/:repo/git/tags/:sha

Die Antwort:

{ 
    "tag": "v0.0.1", 
    "sha": "940bd336248efae0f9ee5bc7b2d5c985887b16ac", 
    "url": "https://api.github.com/repos/octocat/Hello-World/git/tags/940bd336248efae0f9ee5bc7b2d5c985887b16ac", 
    "message": "initial version\n", 
    "tagger": { 
    "name": "Scott Chacon", 
    "email": "[email protected]", 
    "date": "2014-11-07T22:01:45Z" 
    }, 
    "object": { 
    "type": "commit", 
    "sha": "c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c", 
    "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c" 
    } 
} 

git log

git log --decorate --graph --oneline 

enter image description here


git tag

--contains [<commit>]
Nur Liste Tags, die die angegebene Commit (HEAD wenn nicht anders angegeben) enthalten.

enter image description here

+0

Sind Sie sicher, dass die REST-API-URL korrekt ist?Ich habe versucht, mit der URL in Ihrem Beispiel und bekam eine 404: https://api.github.com/repos/octocat/Hello-World/git/tags/940bd336248efae0f9ee5bc7b2d5c985887b16ac –

+0

Sie brauchen Token so weit ich kann sagen https://developer.github.com/v3/git/tags/ – CodeWizard

+0

Auch hier: https://developer.github.com/v3/repos/#list-tags – CodeWizard

1

Ich bin über die REST-API nicht sicher, aber Sie können diese CLI von Git tun

git tag --contains <commit> 

Dies gibt alle Tags aus dieser erreichbar begehen. <commit> kann ein Commit oder ein Objekt sein ... dh ein Name einer Zweigstelle, ein Tag-Name oder ein sha.