本文是 「GitHub 入门与实践」 的个人笔记。

文件相关操作

在 GitHub 中打开一个文件会显示该文件的内容,同时右上角会显示用于该文件的菜单:

  • Copy 复制整个文件内容。
  • Raw 直接在浏览器中显示文件内容。使用该 URL,可以通过 HTTPS 获取该文件。
  • Blame 按行显示最新的提交。
  • Open in Git History 查看该文件的提交历史。
  • Open this file in GitHub DesktopGitHub Desktop 打开该文件。
  • Edit 修改文件,同时可以编辑提交。
  • Delete 删除文件

当我们点击行号时,这行就会标记为黄色,同时 URL 会自动添加上所选的行号。如 #L12。也可以多行选取,如 #L12-L18 是选取该文件中 12-18 行。

查看分支之间的差异

比如我们想看 Spring Boot 中 2.2.x 和 2.3.x 分支的差异,我们可以使用下列 URL 查看:

  1. https://github.com/spring-projects/spring-boot/compare/2.2.x...2.3.x

ATTENTIO:这里 GitHub 会以 Pull Requst 来执行差异比较。如果 URL 后面的比较为 2.3.x...2.2.x,这样 GitHub 不会比较差异,因为在比较的过程中,它是以 2.3.x 为基准值,2.2.x 为比较对象。2.3.x 是从 2.2.x 开发过来,所以 GitHub 会显示比较的分支之间没有差异。而反过来就可以显示在 2.2.x 到 2.3.x 的开发过程中的提交次数、文件新建或改动次数、讨论次数和人员贡献数。

... 是 Git 的语法,详情可以参考 Pro Git

还可以查看几天前的差别:

  1. https://github.com/spring-projects/spring-boot/compare/master@{7.day.ago}...master

NOTE: day -> week -> month -> year

查看指定日期的差别:

  1. https://github.com/spring-projects/spring-boot/compare/master@{2019.1.1}...master

其实每个分支就是一个 SHA 值,所以也可以指定 SHA 来查看差异:

  1. https://github.com/spring-projects/spring-boot/compare/728e474...master

通过提交信息操作 Issue

在提交信息中加入对应的 issue 编号(e.g. #24),就可以在对应的 issue 中显示该提交。
同样,可以使用提交信息关闭 issue,只需要包含下面的描述信息即可:

  • [fix|fixes|fixed] #24
  • [close|closes|closed] #24
  • [resolve|resolves|resolved] #24

    文件修改

    默认情况下,GitHub 会将空格的改动也展示出来。在 URL 末尾加上 ?w=1 即可取消。

    Wiki

    在 wiki 的仓库中创建一个 _sidebar 的页面即可显示侧边栏。在编辑的时候页面都会附加 Sidebar 段。