查看多人协作项目

查看多人协作项目

克隆 Lighthouse 项目

我们首先需要下载一个正在进行多人协作的项目。让我们下载 Google 的 Lighthouse 项目,这是一个用于对渐进式网页应用进行审计、性能度量和提供最佳实践的应用。

这是GitHub 上的 Lighthouse 项目

https://github.com/GoogleChrome/lighthouse

 

 

按 commit 作者分组

这不是一个巨大的项目,但仍有超过 1,000 个 commit 。要看到每位贡献者在此仓库中添加了多少 commit ,一个快捷的方法是使用 git shortlog 命令:

 

 git shortlog 显示了按字母顺序排序的人名列表,以及他们对应的提交说明。如果我们只想看到每个开发者的 commit 数量,我们可以添加几个选项:用 -s 仅显示 commit 的数量(而不是每个 commit 的消息),以及用 -n 来按数量排序(而不是按作者姓名的字母顺序)。

 

按作者筛选

另一种显示某个作者所有 commit 的方法是使用常规的 git log 命令,包含 --author 选项来筛选所述作者的 commit 。

$ git log --author=Surma

 

 

按搜索内容筛选 commit

在讲解“按搜索内容筛选 commit”这部分之前,我认为我需要强调一下编写好的描述性提交说明的重要性。编写描述性提交说明,会使你之后能很轻松地搜索提交说明,找到你想要的东西。

另外记住,如果提交说明不足以解释 commit 的内容,则你可以在描述区域中提供关于该 commit 用途的详细说明。

我们以 commit 5966b66 为例,来说明如何在 lighthouse 项目的 commit 中包含额外详细信息:

$ git show 5966b66

 

 

提交说明为“配置由白名单集成运行的 Lighthouse (#1830)”。但除此之外还有一些文本。在提交说明下面,你还会看到看到几行有关 commit 的其他信息。此部分提供了有关为何需要此 commit 的更多信息。

那么这些详细信息为何重要呢?一方面,你将能更容易地回头查看对仓库所做的更改,其他人也更容易查看更改。另一方面是你将能根据当前说明或描述区域中的信息筛选 commit 。

我们可以使用 --grep 选项筛选 commit 。

我们再来尝试筛选提到 "bug" 一词的 commit ,使用下面任何一个命令都可以这么做:

 

 

$ git log --grep=bug

 

 

小结

git log 命令非常强大,你可以使用它来深入了解关于仓库的很多信息。而且,它在探索有关你与他人协作的仓库的信息这一方面很实用。你可以使用 git log 完成以下任务:

  • 使用 git shortlog 按作者对 commit 分组

      $ git shortlog
  • 使用 --author 选项筛选 commit

      $ git log --author="Richard Kalehoff"
  • 使用 --grep 选项筛选 commit

      $ git log --grep="border radius issue in Safari"

 

posted @ 2020-03-14 18:33  静心而味  阅读(184)  评论(0编辑  收藏  举报
愿得一心人