有什么办法可以让git仓库从github克隆或下载多少次?我只是好奇,因为我发现其他统计信息(例如提交时间行的代码)可能使用以下方法生成:http : //gitstats.sourceforge.net/,但我没有找到如何检查克隆/下载计数的方法。
有什么办法可以让git仓库从github克隆或下载多少次?我只是好奇,因为我发现其他统计信息(例如提交时间行的代码)可能使用以下方法生成:http : //gitstats.sourceforge.net/,但我没有找到如何检查克隆/下载计数的方法。
Answers:
克隆是只读操作,原始存储库未修改。您无法为根本无法跟踪的数据提取统计信息。
我只是发现有一种使用github API的命令来获得它的更简单方法。
curl -u [username]:[password] https://api.github.com/repos/[owner]/[repo]/traffic/clones
这里:
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
玩得开心。
对于使用WordPress的用户,我开发了此插件:GitHub Release Downloads。它允许您获取GitHub存储库版本的下载数量,链接和更多信息。
为了解决原始问题,简码[grd_count user="User" repo="MyRepo"]
将返回存储库的下载次数。该数字对应于一个GitHub存储库的所有版本的所有下载计数值的总和。
例:
实际的克隆计数可以通过“克隆图”功能获得,我已经能够通过此功能获取单个计数:
#!/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'
您可以使用shields.io提供的图标栏,该图标栏显示包括Github在内的各种网站中项目的计数。它们显示下载计数,但不显示克隆计数。
这是我有一个项目的示例:
降价代码:
![GitHub All Releases](https://img.shields.io/github/downloads/lewdev/hw-gen/total)
结果:
没有人“下载”我的应用程序,因为它已经发布,但是人们确实克隆了它。因此,我宁愿查看该计数。