我一直在GitHub
从Linux shell到我的仓库进行连续提交,它们以应有的方式很好地显示在网站上。唯一的问题是“您的贡献”部分没有显示任何近期活动。我从11月的某天开始有一个绿色方块,我不知道我怎么得到的,但是其他所有捐款都没有出现在日历中(但同样,它们确实 出现在其回购中。
在这里我想念什么?
我一直在GitHub
从Linux shell到我的仓库进行连续提交,它们以应有的方式很好地显示在网站上。唯一的问题是“您的贡献”部分没有显示任何近期活动。我从11月的某天开始有一个绿色方块,我不知道我怎么得到的,但是其他所有捐款都没有出现在日历中(但同样,它们确实 出现在其回购中。
在这里我想念什么?
Answers:
这是一个Github问题,有时它们的更新机制不起作用,而变成了“过时的缓存”。这没什么大不了的,只需发送电子邮件至support@github.com描述问题,他们会立即解决。
来自git
我刚刚看到了您对GoTime2存储库的贡献,看来您一直在将提交推送到layout分支。
这些贡献未显示的原因是,我们仅在对存储库的默认分支或gh-pages分支进行提交时跟踪提交贡献:
将您的文稿合并到默认页面或gh-pages中后,您将在创作日期将其记为功劳。
因此,就我而言,我必须将“布局”分支与“主”分支合并,才能在日历中看到“您的捐款”。
master
分支中,该怎么办?我的捐款会记录在“您的捐款”日历中吗?
对我来说,这个问题是由于我在我的工作计算机上提交的,原因是我在gitconfig中使用其他电子邮件。将我的工作电子邮件地址添加到我的github帐户中并没有使过去的提交显示在摘要中,但是现在可以按应有的方式显示新的提交。
您可以通过找到用于存储库的电子邮件地址git config user.email
。
git config user.email <my email>
并推送了一个提交,现在它正在跟踪我的提交。接下来,我将写给他们支持,因为我工作了14个小时,做了一个新的仓库并编写了完整的Alpha版本,但是我只针对与它有关的问题进行活动。
$pwd personal_project $git config user.email "your personal email" $pwd work_project $git config user.email "work email"
。应该正确计算您的贡献。
可能的原因:
提交是用叉子完成的
分叉的承诺不会计入您的贡献。
https://help.github.com/articles/why-are-my-contributions-not-showing-up-on-my-profile/
这成功了!我只是用过$ git config user.email "my email address used on my git repo"
,它起作用了。
“您必须使用与登录github帐户时相同的电子邮件ID提交更改”
怎么解决:
git config --global user.email abc@xyz.com
git config user.email abc@xyz.com
电子邮件= abc@xyz.com名称= abc
其他原因可以在这里找到 https://help.github.com/articles/why-are-my-contributions-not-showing-up-on-my-profile/
确保您的本地电子邮件与帐户中的电子邮件完全相同。
转到终端并在您要提交的文件夹内运行:
git config --global user.email
#=> TRICULI.TO@MAIL.com
git config --system user.email
#=>
git config --local user.email
#=> triculito@mail.com
我发生了类似的事情。我帐户中的电子邮件是--global中的电子邮件,但我的--local电子邮件中的电子邮件则略有不同,没有“。”。
(在Gmail中,这些电子邮件之间没有区别,它们的工作原理完全相同)。
因此这通常是由于很多因素而发生的,您必须访问此GitHub帮助
我发现的最常见错误是:
我个人最近有问题1,为此我去了terminal / cmd / cli并通过运行此命令在本地配置我的电子邮件地址
git config --global user.email yourname@email.address
完成后,尝试再次运行此配置,如下所示:
git config --global user.email
您应该能够看到:
yourname@email.address
如果这是正确的,则说明您已使用全局公共存储库成功配置了本地计算机。现在,您的下一次提交将记入您的日历。
也许Github已经解决了这个问题。有一种简单的方法,转到github.com电子邮件设置:https : //github.com/settings/emails
个人设置->电子邮件
您可以在此处添加电子邮件地址,并通过发送验证链接来验证较新的电子邮件地址,然后您会发现以前的提交都记录在“您的捐款”日历中。而且此电子邮件验证还将使您能够从GitHub接收通知和密码重置。
您的新电子邮件地址将用于与帐户相关的通知(例如,帐户更改和账单收据)以及任何基于Web的GitHub操作(例如,编辑和合并)。
then you will find your previous commits are all recorded in the 'Your Contributions
日历`<-这句话似乎不正确。这一步骤是否需要时间?
我在iOS开发的Xcode 9中遇到了相同的问题。
即使我在Xcode中进行了提交。“您的捐款”日历中没有任何捐款。
解:
全局更改提交者名称和电子邮件
用于提交的电子邮件地址必须与您的GitHub帐户相关联。
在终端中:
$ git config --global user.name "Full Name"
$ git config --global user.email "fullname@gmail.com"
另请参阅GitHub Help:在Git中设置提交电子邮件地址
我有同样的问题,这对我有用:GitHub贡献检查器,下面的链接。安装后,该程序将检查您最近提交的有效性,并为您提供规则列表,其中未满足红色的规则/规则。
我的问题是GitHub使用Cygwin终端名称作为电子邮件地址,因此我只是将Cygwin终端名称添加到我的个人资料中,所有最近的提交都添加到了GitHub日历中。
您的承诺将不算作贡献!检查以下详细信息: https : //github.com/jdennes/contribution-checker
您可以转到https://github.com/settings/emails 并使用git config --global user.email添加您正在使用的电子邮件
我有同样的确切问题,原来是因为本地git上的电子邮件与我的GitHub帐户上的电子邮件不匹配。
要在本地计算机上更新电子邮件,请执行以下操作:
git config --global user.email "your.email@email.com"
验证所有提交都在github上进行了更新,如果没有,则可以通过单击提交并在提交url的末尾添加“ .patch”,检查单个提交以查看与该提交关联的电子邮件,如下所示:
https://github.com/username/repoName/commit/9fbe83f71cfc3503.patch
现在您要做的就是将看到的电子邮件添加到您的帐户中(不需要验证)。
再次检查提交,您应该看到您的用户名并记入:)
GitHub明确说明了他们如何在其帮助中衡量您的贡献:
问题和请求请求:
承诺:
仅当它们满足以下所有条件时:
用于提交的电子邮件地址与您的GitHub帐户相关联
提交是在独立存储库中进行的,而不是在fork中进行的
提交了:
此外,以下至少一项必须为真:
注意:进行符合要计为贡献的要求的提交后,您可能需要等待长达24小时才能看到该贡献出现在您的贡献图中
我刚刚通过命令行再次添加了电子邮件,它解决了这个问题:
$ git config user.email "myemil@mydomain.com"
另一个问题是关于您的分支机构的。如果您在maser旁边创建另一个分支并尝试推送该分支,则可能会发生此问题。就我而言,我已开始努力掌握并获得解决方案。
我通过在本地环境中使用GitHub配置文件的用户名作为git用户名解决了类似问题。
举例来说
在本地git配置中将全局用户名设置为susithrj。
git config --global user.name“ susithrj”
我最近不得不恢复笔记本电脑,却忘记了将电子邮件重新配置为git。我的笔记本电脑用户名看起来与git one相似,所以我只是盲目地认为自己的提交被正确地赋予了属性。发布后,您可以更改全局电子邮件设置。但是,如果您想更正项目上未归因的提交,则可以使用此运行此脚本来创建一个别名gca
,该别名可以在git项目目录中运行,以更改过去提交的作者身份。
在~
目录中,添加:
$ cat <<EOF >> ~/.aliases
function git_change_authorship {
git filter-branch -f --env-filter "
GIT_AUTHOR_NAME=\"\$1\"
GIT_AUTHOR_EMAIL=\"\$2\"
GIT_COMMITTER_NAME=\"\$1\"
GIT_COMMITTER_EMAIL=\"\$2\"
"
}
alias gca=git_change_authorship
EOF
$ source ~/.aliases
然后在您的git project目录中运行 gca <git username> <git email address>
当心!我仅在我自己的个人项目中使用过它,而我一直是我的唯一提交者。尚未有通过小组项目进行测试的机会,因此请谨慎进行。
您可以将电子邮件设为不公开,但捐款仍会显示在日历中。您可以从github电子邮件设置中选择不公开电子邮件地址,并在git配置中 使用github noreply电子邮件地址。
git config user.email "xxxxxxxxxxx@users.noreply.github.com"
注意
对我来说,我选择从github电子邮件设置中保留我的电子邮件的私密性。这给了我一个错误
Your push would publish a private email address.
同时尝试推送至我的仓库。我删除了电子邮件。推送成功之后,但是捐款没有记录在我的日历中。
如GitHub在电子邮件设置页面中所述
当执行基于Web的Git操作(例如,编辑和合并)并代表您发送电子邮件时,我们将删除您的公开资料电子邮件,并使用xxxxxxxxxxx@users.noreply.github.com。如果要命令行Git操作使用私人电子邮件,则必须在Git中设置电子邮件。
github上的“贡献日历”或“活动概述”仅记录与github帐户中记录的邮件地址相关的提交。
正如该线程中许多其他人已经指出的那样,通过以下方式查找当前本地保存的电子邮件地址:
git config user.email
如果与github上的邮件不匹配,请使用以下命令进行更改:
git config --global user.email my_email@gmail.com
这将全局更改以后所有提交的邮件地址,但不会影响过去提交的“贡献概述”。您可以按照官方文档进行详细说明。
您意识到,您过去的许多提交未正确记录在Github的“贡献概述”中:
要更改此设置,您可以按照官方github docs中说明的步骤更改存储库的作者信息。
简短摘要:
克隆裸仓库
git clone --bare https://github.com/user/repo.git
cd repo.git
改变变量后,下面的代码到Git的bash的控制台粘贴OLD_EMAIL
,CORRECT_NAME
以及CORRECT_EMAIL
:
#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="your-old-email@example.com"
CORRECT_NAME="Your Correct Name"
CORRECT_EMAIL="your-correct-email@example.com"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_COMMITTER_NAME="$CORRECT_NAME"
export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_AUTHOR_NAME="$CORRECT_NAME"
export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags
按Enter键运行脚本
git push --force --tags origin 'refs/heads/*'
此过程应该更新“贡献概述”,并且现在还显示以前未显示的提交:
警告:此操作会破坏您存储库的历史记录。如果您正在与其他人在存储库上进行协作,则重写已发布的历史记录被认为是不好的做法。您只应在紧急情况下这样做。