如何给github.com用户留言


376

需要有关GitHub使用的帮助。我想知道是否有一种方法可以与github.com用户进行通信,即当在GitHub页面上仅提供用户名/ ID时向该用户写消息吗?GitHub是否具有此社交功能?


6
回答问题(因为它现在已关闭):您可以打开问题,并希望回购所有者可以回答您。
heltonbiker '16

1
请参阅通过Github与用户联系的任何方式吗?,这是WebApps.SE上的主题。
chharvey '16

在我看来,这更像是SuperUser的问题。
德克·霍斯滕

5
对于注重隐私的用户为了避免在此处显示任何答案,都不会显示个人电子邮件,Github用户可以转到 “设置”->“电子邮件”,然后选中“将我的电子邮件地址设为私人 ”复选框。然后,他们必须使用git config user.emailgit config --global user.email将其本地git电子邮件设置为Github私人电子邮件地址(<username> @ users.noreply.github.com)从此以后,所有提交都将仅包含私人“ noreply”电子邮件。请注意,任何带有个人电子邮件集的先前提交/本地回购提交仍将显示它。
leanne

Answers:


361

尽管GitHub删除了私人消息传递功能,但仍有替代方法。

GitHub托管git存储库。如果您愿意与之通信的用户曾经提交过一些代码,则很有可能实现您的目标。实际上,在每个提交中都存储了有关更改作者或接受更改的人员的一些信息。

如果您真的想与用户user_test交流

  • 显示用户的公共活动页面:https : //github.com/user_test?tab= activity
  • 搜索一个事件,指出“ user_test被推送到[repository]的[branch]”。通常有很多机会,他们可能推动了自己的一项承诺。通过单击“查看比较...”链接来确保是这种情况,并确保将用户列为提交者之一。
  • 在本地计算机上克隆他们推送到的存储库: git clone https://github.com/..../repository.git
  • 检出他们推送到的分支: git checkout [branch]
  • 显示最新的提交: git log -50

作为提交者/作者,应该显示电子邮件以及提交数据。

注意:与不请自来的电子邮件相关的所有警告都应在此处应用。难道不是垃圾邮件。


11
用户没有活动是什么?我的意思是,仅创建一个帐户就不再登录了?
侯赛因

6
哇!为什么不只使用github用户个人资料页面上的电子邮件地址?
mavili 2014年

24
@mavili,因为它可能未填充。看到问题->“当在github页面上仅给出用户名/ ID时?”
nulltoken

5
@nulltoken我用流泪的眼睛看了你的答案。我无法相信这个梦想成真。坦克兄弟谢谢......
Esterlinkof

3
username@users.noreply.github.com万一某人真的想保持其电子邮件地址的私密性,您很可能会获得一个地址。
tigrou

237

该方法截至2020年3月

  1. 将下一行复制并粘贴到您的浏览器中(随意添加书签):https : //api.github.com/users/xxxxxxx/events/public
  2. 找到您要为其发送电子邮件的GitHub用户名。用用户的GitHub用户名替换URL中的xxxxxxx。按下Enter键。
  3. 按Ctrl + F并搜索“电子邮件”。

qbolec所建议,可以使用以下代码段完成上述步骤:

<input id=username type="text" placeholder="github username or repo link">
<button onclick="fetch(`https://api.github.com/users/${username.value.replace(/^.*com[/]([^/]*).*$/,'$1')}/events/public`).then(e=> e.json()).then(e => [...new Set([].concat.apply([],e.filter(x => x.type==='PushEvent').map(x => x.payload.commits.map(c => c.author.email)))).values()]).then(x => results.innerText = x)">GO</button>
<div id=results></div>

资料来源:Matthew Ferree @ Sourcecon


7
就我而言,它不包含电子邮件
TheKitMurkit

7
此方法确实需要用户进行一些公共活动
ovinophile

5
哇,这个答案只是垃圾邮件发送者的宝物...“如何找到任何github用户的电子邮件地址”
Alex

7
此api中的电子邮件地址来自用户的本地git设置,而不是他们在Github中设置的。Github最近在“设置/电子邮件”下添加了一个选项,以阻止意外包含用户标记为“私人”电子邮件地址的提交。而且,是的,api公开的内容仅适用于公共仓库。私人回购数据不会显示。
leanne

2
@pbhj可能有人应该告诉github。这是一个隐私泄漏。
Gewure

52

对于像我这样的懒人来说,基于Nikhil解决方案的代码段

<input id=username type="text" placeholder="github username or repo link">
<button onclick="fetch(`https://api.github.com/users/${username.value.replace(/^.*com[/]([^/]*).*$/,'$1')}/events/public`).then(e=> e.json()).then(e => [...new Set([].concat.apply([],e.filter(x => x.type==='PushEvent').map(x => x.payload.commits.map(c => c.author.email)))).values()]).then(x => results.innerText = x)">GO</button>
<div id=results></div>


1
如果您搜索的用户已经合并了另一个用户的PR,这将带来错误的点击。在这种情况下,commits将具有PR的作者和合并(合并PR的用户)的数组。
styfle

50

只需创建一个虚拟仓库,打开一个新发行版,然后使用@xxxxx通知受影响的用户。

如果用户启用了通过电子邮件的通知,他将收到一封电子邮件,否则,他将在下次登录时通知。

无需在提交或活动流中搜索电子邮件地址,并且尊重隐私。


应该是投票率更高的答案。简而言之,正如您所说,尊重隐私。ty。
JoelAZ

1
而且,如果该帐户上没有任何活动,那几乎是我找到的唯一方法。
Dave Strickler

33

Github在2012年4月3日说:

今天,我们要删除两个功能。他们已经收集灰尘已有一段时间了,现在该扔掉它们了:Fork Queue&Private Messaging

资源


2
这个答案已经过时了。在下面查找更新的答案。
Nikhil

22

这是另一种方式:

  • 浏览某人的提交历史记录(单击commits分支旁边的,以查看整个提交历史记录)

  • 单击使用该人的用户名进行的提交,因为其中可能有很多

  • 然后,您应该看到该网址具有与URL相连的哈希。添加.patch到此提交URL

  • 可能会在那里看到该人的电子邮件地址

例: https://github.com/[username]/[reponame]/commit/[hash].patch

资料来源:克里斯·赫伦(Chris Herron)@ Sourcecon


6
为了避免以这种方式显示个人电子邮件,Github用户可以转到“设置”->“电子邮件”,然后选中“ 将我的电子邮件地址设为私有 ”复选框。然后,他们必须使用git config user.emailgit config --global user.email将其本地git电子邮件设置为Github私人电子邮件地址(<username> @ users.noreply.github.com)从此以后,所有提交都将仅包含私人“ noreply”电子邮件。请注意,任何带有个人电子邮件集的先前提交或本地回购提交仍将包含真实的电子邮件地址。
leanne

3
仍然可以,谢谢。我希望垃圾邮件发送者不会滥用该功能。
Dennis Gorelik

5

除了删除github消息传递服务外,由于许多githubber与twitter进行通信并提倡twitter,因此通常不需要使用它。

优点是,有:

  • 完全透明
  • 更好的覆盖范围
  • 更好的推文搜索功能
  • 更好的存档,例如美国国会图书馆

为了确保完全透明,stackoverflow也不允许私有消息传递可能也不是巧合。此处完整的消息传递问题在meta-stackoverflow上进行了详细讨论。


8
好的,公开向他们发送消息的方式如何?例如,我想问一个关于如何做某件事的问题,并且所提供的文档非常糟糕。这不仅对我有帮助,而且对任何尝试使用他们的代码的人都有帮助。
迈克尔

10
如果您想提一个问题/报告有关他/她的项目的信息,只需在github中打开一个“问题”并进行讨论
Alex

8
但是,那是一种可悲的状况。对我而言,Twitter并不是一个好平台。
Xupicor

9
twitter对于实际通信不利,因为不能超过140个字符。
My1年

6
如果他们的个人资料页面上没有列出任何推特,这实际上没有帮助。
伊戈尔(Igor)2016年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.