如何通过 Github 找到一个人?

很多时候,我们都需要找到一个人的联系方式。但是,并不是每一次我们都可以很好的拿到他的联系方式,这个时候,我们就需要借助一些奇技淫巧来找到一个人的联系方式。

Requirements

  • Github 账号
  • 你要找的人的 GitHub 账号(需要其账号下有仓库)

原理

在我们使用 Git 进行版本控制时,一开始,我们会被要求设置一个 Git 的用户名和邮箱,就像下面这样。

后续,我们的每一个 Commit 都会基于我们填写的用户名和邮箱来进行存储。我们只需要查询一个人在 Github 的提交记录,就可以找到他填写在 Git 中的邮箱和名字,从而方便我们更进一步找到这个人。

实践

想要通过 Git 找到一个人的邮箱,最简单的方法就是使用 Github 提供的 GraphQL 来进行查询,简单方便。

访问Github 的 GraphQL API Explorer,点击右侧的 Sign in ,使用你的 Github 账号登陆,这样就可以调用 Github 的 API 了。

登陆后,你下方的 GraphQL 输入框就可以输入内容了。在其中输入如下代码

{
  repository(name: "grank", owner: "lctt") {
    ref(qualifiedName: "master") {
      target {
        ... on Commit {
          id
          history(first: 5) {
            edges {
              node {
                author {
                  name
                  email
                }
              }
            }
          }
        }
      }
    }
  }
}

并将 name 替换为你要查询的人的 repo 名,owner 改为你需要查询的人的名字,然后点击执行按钮。

右侧会出现你的执行结果,你会发现,其中出现我们想要的“邮箱”地址。

你会发现,这里其实有两种类型的邮箱,一种是我们常见的,自己用的各种免费邮箱,比如 @qq.com@gmail.com@foxmail.com 之类的;另一种是形如 27856297+dependabot-preview[bot]@users.noreply.github.com 这样的邮箱。

这两种邮箱的区别是,前者是我们自己通过 git 设置的邮箱,而后者则是我们通过 Github 网页、 API 操作产生的 commit 。你在查询的时候,要记得去找第一类邮箱来作为参考。

当然,不排除有开发者在看了本篇文章后,去用 private 邮箱修改自己本地的 Git ,那就没办法了。

找到这个邮箱以后怎么办呢?

  1. 直接发邮件联系
  2. 如果是 QQ 邮箱、 Foxmail ,可以试着直接用邮箱,或者邮箱里的 QQ 号加好友。
  3. 通过 Google 搜索这个邮箱,查找其他的关联信息。

作者: Bestony

Developer

《如何通过 Github 找到一个人?》有2个想法

发表评论