如何为github.com用户留言

时间:2012-10-02 08:04:14

标签: github

需要有关GitHub使用的帮助。我想知道是否有办法与github.com用户沟通,即在GitHub页面上只给出用户名/ id时给用户写一条消息? GitHub有这个社交功能吗?

9 个答案:

答案 0 :(得分:334)

虽然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

作为提交者/作者,应该与提交数据一起显示电子邮件。

注意:与未经请求的电子邮件相关的每条警告都应该适用于此处。 垃圾邮件。

答案 1 :(得分:177)

此方法自2019年3月起正在运作

  1. 将下一行复制并粘贴到您的浏览器中(随意 给它添加书签):https://api.github.com/users/xxxxxxx/events/public
  2. 找到您要为其发送电子邮件的GitHub用户名。更换 带有人员GitHub用户名的URL中的xxxxxxx。按Enter键。
  3. 按Ctrl + F并搜索“email”。
  4. 根据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>
    &#13;
    &#13;
    &#13;

    来源:Matthew Ferree @ Sourcecon

答案 2 :(得分:45)

对于像我这样的懒人,基于Nikhil's solution

的片段

&#13;
&#13;
<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>
&#13;
&#13;
&#13;

答案 3 :(得分:31)

Github在2012年4月3日说:

  

今天我们删除了两个功能。他们已经收集了一段时间的灰尘,现在是时候将它们扔出去了:Fork Queue&amp;私人消息

Source

答案 4 :(得分:27)

只需创建一个虚拟仓库,打开一个新问题并使用@xxxxx通知受影响的用户。

如果用户通过电子邮件启用了通知,他将收到一封电子邮件,如果没有,他会在下次登录时发出通知。

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

答案 5 :(得分:15)

这是另一种方式:

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

  • 点击使用此用户名的提交,因为可能有这么多用户

  • 然后你应该看到网址有一个连接到URL的哈希。将 .patch 添加到此提交网址

  • 可能会查看该人的电子邮件地址

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

来源:Chris Herron @ Sourcecon

答案 6 :(得分:5)

除了删除 github消息服务之外,由于许多githubbers正在与twitter进行沟通和宣传,因此通常不需要使用。

优势是:

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

stackoverflow也不允许私人消息传递,以确保完全透明,这可能并非巧合。整个消息传递问题在meta-stackoverflow here上进行了详细讨论。

答案 7 :(得分:0)

GitHub有此社交功能吗?

如果为commit email is kept private,则为GitHub now (July 2020) proposes

用户和组织现在可以将Twitter用户名添加到其GitHub个人资料中

您现在可以直接通过配置文件设置以及REST API从您的配置文件页面将Twitter用户名添加到GitHub配置文件中。

我们还添加了最新更改:

  • 组织管理员现在可以通过组织配置文件设置和REST API将Twitter用户名添加到其配置文件中。
  • 所有用户现在都可以在用户和组织配置文件上以及通过REST和GraphQL API来查看Twitter用户名。
  • 当可赞助的维护者和组织将Twitter用户名添加到其个人资料时,我们将鼓励新的赞助商在Twitter上分享其赞助时包括该Twitter用户名。

这可能是一种向GitHub用户发送消息的解决方法。

答案 8 :(得分:0)

对我来说效果很好的最简单的解决方案就是输入该特定用户的用户名或相应用户的存储库链接!

<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, Get email!</button>
<div id=results></div>