web-dev-qa-db-fra.com

Existe-t-il un moyen d'obtenir des statistiques de téléchargement / clonage d'un référentiel git?

Existe-t-il un moyen d'obtenir combien de fois un référentiel git a été cloné ou téléchargé depuis github? J'étais juste curieux car j'ai trouvé d'autres statistiques telles que les temps de validation des lignes de codes à générer en utilisant: http://gitstats.sourceforge.net/ mais je n'ai pas trouvé comment vérifier le clone/téléchargement compter.

67
Shreyas Karnik

Le clonage est une opération en lecture seule, le référentiel d'origine n'est pas modifié. Il n'y a aucun moyen de tirer des statistiques pour des données qui ne sont tout simplement pas suivies.

30
meagar

C'est super facile maintenant!

Allez "REPO -> Insights -> Traffic"

enter image description here

41
Farhan

Je viens de découvrir qu'il existe un moyen encore plus simple de l'obtenir avec une seule commande en utilisant l'API github.

curl -u [username]:[password] https://api.github.com/repos/[owner]/[repo]/traffic/clones

ici:

username  = your github id
password  = your github password, optional. If not put in command, a password request would pop out.
owner     = the owner of the repo, might be another name for a organized repo
repo      = the repo name

S'amuser.

8
Wei Song

En ce qui concerne les statistiques de téléchargement, vous pouvez obtenir des informations sur vos versions via l'API .

Pour ceux qui utilisent WordPress, j'ai développé ce plugin: Téléchargements de versions GitHub. Il vous permet d'obtenir le nombre de téléchargements, les liens et plus d'informations sur les versions des référentiels GitHub.

Pour répondre à la question d'origine, le shortcode [grd_count user="User" repo="MyRepo"] renverra le nombre de téléchargements pour un référentiel. Ce nombre correspond à la somme de toutes les valeurs de nombre de téléchargements de toutes les versions pour un référentiel GitHub.

Exemple: Example

4
IvanRF

Le nombre réel de clones est disponible via la fonction Clone Graphs , que j'ai pu gratter pour obtenir les nombres individuels:

#!/bin/sh
#
# This script requires:
#   apt-get install html-xml-utils
#   apt-get install jq
#
USERNAME=dougluce
PASSWORD="PASSWORD GOES HERE, BE CAREFUL!"
REPO="dougluce/node-autovivify"

TOKEN=`curl https://github.com/login -s -c /tmp/cookies.txt | \
     hxnormalize | \
     hxselect 'input[name=authenticity_token]' 2>/dev/null | \
     Perl -lne 'print $1 if /value=\"(\S+)\"/'`

curl -X POST https://github.com/session \
     -s -b /tmp/cookies.txt -c /tmp/cookies2.txt \
     --data-urlencode commit="Sign in" \
     --data-urlencode authenticity_token="$TOKEN" \
     --data-urlencode login="$USERNAME" \
     --data-urlencode password="$PASSWORD" > /dev/null

curl "https://github.com/$REPO/graphs/clone-activity-data" \
     -s -b /tmp/cookies2.txt \
     -H "x-requested-with: XMLHttpRequest" #| jq '.summary'
1
Allen Luce