13 ответов:
обновление 2017
больше нет экрана трафика с указанием количества клонов РЕПО.
Вместо этого вы должны полагаться на сторонние услуги как GitItBack (atwww.netguru.co/gititback) но даже это не включает количество клонов.вы все еще можете использовать GitHub API до получить количество загрузок для вашего выпускает (не ровно что спросили)
Смотрите "получить один релиз", наdownload_countполе.Смотрите также www.somsubhra.com/github-release-stats, упомянуто ниже.
Например, вот число для последний выпуск git для Windows
Обновление Август
GitHub также предлагает количество клонов для РЕПО в своем трафике График:
Смотрите "Графики Клон"
Обновление Октября 2013
как уже упоминалось ниже by andyberry88, а я подробно в июле прошлого года, теперь в GitHub предлагает релизов (см. его API), которая есть
download_countполе.Микеле Милидони, в его (голосуют) ответ не использовать поле в его скрипт на питоне.
(очень малый экстракт)c.setopt(c.URL, 'https://api.github.com/repos/' + full_name + '/releases') for p in myobj: if "assets" in p: for asset in p['assets']: print (asset['name'] + ": " + str(asset['download_count']) + " downloads")
оригинальный ответ (декабрь 2010 года)
Я не уверен, что вы можете увидеть эту информацию (если она записана вообще), потому что я не вижу ее в GitHub Repository API:
$ curl http://github.com/api/v2/yaml/repos/show/schacon/grit --- repository: :name: grit :owner: schacon :source: mojombo/grit # The original repo at top of the pyramid :parent: defunkt/grit # This repo's direct parent :description: Grit is a Ruby library for extracting information from a git repository in an object oriented manner - this fork tries to intergrate as much pure-ruby functionality as possible :forks: 4 :watchers: 67 :private: false :url: http://github.com/schacon/grit :fork: true :homepage: http://grit.rubyforge.org/ :has_wiki: true :has_issues: false :has_downloads: trueвы можете только увидеть, если она имеет популярность или нет.
Я написал a небольшое веб-приложение в javascript для отображения количества загрузок всех активов в доступных выпусках любого проекта на Github. Вы можете попробовать приложение здесь:http://somsubhra.github.io/github-release-stats/
GitHub имеет устаревшие загрузки поддержка и теперь поддерживает 'релизы' - https://github.com/blog/1547-release-your-software. Чтобы создать либо с помощью пользовательского интерфейса GitHub или создать аннотированный тег (префикс http:// git-scm.com/book/ch2-6.html) и добавить выпуске его в GitHub. Затем вы можете загрузить двоичные файлы или "активы" в каждый выпуск.
после того, как у вас есть некоторые релизы, API GitHub поддерживает получение информации о них и их активы.
curl -i \ https://api.github.com/repos/:owner/:repo/releases \ -H "Accept: application/vnd.github.manifold-preview+json"посмотреть на download_count входа. Там больше информации на http://developer.github.com/v3/repos/releases/. Эта часть API все еще находится в периоде предварительного просмотра ATM, поэтому он может измениться.
Обновление Ноябрь 2013:
API релизов GitHub теперь вышел из периода предварительного просмотра, поэтому заголовок "Accept" больше не нужен -http://developer.github.com/changes/2013-11-04-releases-api-is-official/
Он не будет сделайте любой вред, чтобы продолжать добавлять заголовок "Accept".
ранее в Github было два метода загрузки кода: клонирование или загрузка в виде zip a .git repo, или загрузить файл (например, двоичный) для последующей загрузки.
при загрузке РЕПО (клонирование или загрузка в виде zip) Github не учитывает количество загрузок для технических ограничений. Клонирование репозитория-это операция только для чтения. Аутентификация не требуется. Эта операция может быть выполнена с помощью многих протоколов, включая HTTPS, тот же протокол, который использует веб-страница для показать РЕПО в браузере. Это очень трудно сосчитать.
см.:http://git-scm.com/book/en/Git-on-the-Server-The-Protocols
в последнее время Github устарел функциональность загрузки. Это было потому, что они понимают, что Github сосредоточен на создании программного обеспечения, а не на распространении двоичных файлов.
Как уже упоминалось, GitHub API возвращает количество загрузок двоичных файлов релизов. Я разработал скрипт чтобы легко получить количество загрузок с помощью командной строки.
API Github больше не предоставляет необходимую информацию. Взгляните на - релизы страницы, указанные в ответ Стэна Товянски. Как мы обсуждали в комментариях к этому ответу, API Github сообщает только о загрузке 1 из трех файлов, которые он предлагает за выпуск.
Я проверил решения, представленные в некоторых других ответах на эти вопросы. Vonc это!--4-- > представляет существенную часть Michele Решение милидони. Я установил его GDC скрипт со следующим результатом
# ./gdc stant mdcsvimporter.mxt: 37 downloads mdcsvimporter.mxt: 80 downloads How-to-use-mdcsvimporter-beta-16.zip: 12 downloadsКак вы можете ясно видеть, gdc не сообщает количество загрузок tar.gz и zip файлы.
Если вы хотите проверить, не устанавливая ничего, попробуйте веб-страницы где Somsubhra установил решение, упомянутое в ответ. Заполнить 'стант' как на GitHub имя пользователя и mdcsvimporter2015 в качестве имени хранилища и вы увидите вещи например:
Download Info: mdcsvimporter.mxt(0.20MB) - Downloaded 37 times. Last updated on 2015-03-26увы, еще раз только отчет без загрузки тар.gz и zip файлы. Я тщательно изучил информацию, которую возвращает API Github, но она нигде не предоставляется. Download_count, который возвращает API, в настоящее время далек от завершения.
очень поздно, но вот ответ вы хотите:
https://api.github.com/repos/ [git username] / [git project] /releases/затем найдите идентификатор проекта, который вы ищете в данных. Он должен быть в верхней части, рядом с URL-адресами. Затем перейдите к
https://api.github.com/repos/ [git username] / [git project] /releases/ [id] / assetsполе с именем download_count - это ваш ответ.
на основе ответов VonC и Michele Milidoni я создал этот букмарклет который отображает статистику загрузок GitHub размещенных выпущенных двоичных файлов.
Примечание: из-за проблемы с браузерами что касается реализации политики безопасности контента, букмарклеты могут временно нарушать некоторые директивы CSP и в основном могут не функционировать должным образом при запуске на github, когда CSP включен.
хотя это очень обескураживает, вы можно отключить ЦСП в Firefox как временное решение проблемы. Откройте about: config и установите безопасность.СПС.включить к ложному.
Я закончил писать сценарий скребка, чтобы найти мой счетчик клонов:
#!/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 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'Это захватит данные из той же конечной точки, что и график клонов Github, и выплюнет из него итоги. Данные также включают в себя количество в день, заменить
.summaryС.чтобы увидеть эти красивые печати.
Как уже говорилось, Вы можете получить информацию о релизы через API.
для тех, кто использует WordPress, я разработал этот плагин:GitHub Release Downloads. Это позволяет получить количество загрузок, ссылки и дополнительную информацию для выпусков репозиториев GitHub.
чтобы решить исходный вопрос, шорткод
[grd_count user="User" repo="MyRepo"]возвращает количество загрузок для репозитория. Это число соответствует сумме из всех значений количества загрузок всех выпусков для одного репозитория GitHub.пример:
чтобы попытаться сделать это более ясным:
для этого проекта github: stant/mdcsvimporter2015
https://github.com/stant/mdcsvimporter2015
с релизами по адресу
https://github.com/stant/mdcsvimporter2015/releasesперейти к http или https: (Примечание добавлено " api."and" / repos")
https://api.github.com/repos/stant/mdcsvimporter2015/releasesвы получите этот вывод json, и вы можете искать "download_count":
"download_count": 2, "created_at": "2015-02-24T18:20:06Z", "updated_at": "2015-02-24T18:20:07Z", "browser_download_url": "https://github.com/stant/mdcsvimporter2015/releases/download/v18/mdcsvimporter-beta-18.zip"или в командной строке do:
wget --no-check-certificate https://api.github.com/repos/stant/mdcsvimporter2015/releases
для тех, кому нужно решение на Python, я написал простой скрипт.
Python Скрипт:
использование:
ghstats.py [user] [repo] [tag] [options]
поддержка:
- поддерживает Python 2 и Python 3 из коробки.
- может использоваться как автономный, так и модуль Python.




Comments