跳至主要内容

查看和理解文件

浏览文件内容并追踪随时间的更改,以理解新的代码库及其演变。

GitHub 提供查看原始内容、追踪特定行的更改以及探索文件内容随时间演变的工具。这些洞察揭示了代码的开发过程、当前用途和结构,帮助您高效地做出贡献。

查看或复制原始文件内容

使用原始视图,您可以查看或复制文件的原始内容,且不带任何样式。

  1. 在 GitHub 上,导航至仓库的主页面。

  2. 点击您想要查看的文件。

  3. 在文件视图的右上角,点击 Raw

    Screenshot of a file. In the header, a button, labeled "Raw," outlined in dark orange.

  4. 如果需要复制原始文件内容,在文件视图的右上角,点击 。要下载原始文件,点击

查看文件逐行的修订历史

在 blame 视图中,您可以查看整个文件的逐行修订历史。

提示

在命令行中,您也可以使用 git blame 来查看文件中各行的修订历史。欲了解更多信息,请参阅 Git 的 git blame 文档

  1. 在 GitHub 上,导航至仓库的主页面。

  2. 点击打开您想查看行历史的文件。

  3. 在文件内容上方,点击 Blame。此视图为您提供逐行的修订历史,文件中的代码按提交进行分离。每个提交都会列出作者、提交描述和提交日期。

  4. 要查看特定提交之前的文件版本,点击。或者,要查看特定提交的更多细节,点击提交信息。

    Screenshot of a commit in the blame view. The commit message and versions icon are outlined in dark orange.

  5. 要返回原始代码视图,在文件内容上方,点击 Code

    • 如果您正在查看 Markdown 文件,在文件内容上方,您也可以点击 Preview 返回带有 Markdown 格式的视图。

在 blame 视图中忽略提交

所有在根目录下的 .git-blame-ignore-revs 文件中指定的修订,都会在 blame 视图中被隐藏,使用 Git 的 git blame --ignore-revs-file 配置设置。更多信息请参阅 Git 文档中的 git blame --ignore-revs-file

  1. 在仓库的根目录下,创建一个名为 .git-blame-ignore-revs 的文件。

  2. 将您想从 blame 视图中排除的提交哈希添加到该文件中。我们建议文件结构如下,并包含注释

    # .git-blame-ignore-revs
    # Removed semi-colons from the entire codebase
    a8940f7fbddf7fad9d7d50014d4e8d46baf30592
    # Converted all JavaScript to TypeScript
    69d029cec8337c616552756310748c4a507bd75a
    
  3. 提交并推送更改。

在 blame 视图中,如果提交 引入了新行 或修改了现有行,则这些修订会被排除。如果该提交是最后一次 修改 某行,它仍会出现在 blame 中。您会看到一条 “Ignoring revisions in .git-blame-ignore-revs” 横幅,表明某些提交可能已被隐藏。

Screenshot of the blame view for a file. The blue "Ignoring revisions" banner includes a link to ".git-blame-ignore-revs" which is outlined in orange.

当少量提交对代码进行大量更改时,这非常有用。您也可以在本地运行 git blame 时使用该文件。

git blame --ignore-revs-file .git-blame-ignore-revs

您还可以配置本地 git,使其始终忽略该文件中的修订。

git config blame.ignoreRevsFile .git-blame-ignore-revs

在 blame 视图中绕过 .git-blame-ignore-revs

如果文件的 blame 视图显示 Ignoring revisions in .git-blame-ignore-revs,仍然可以绕过 .git-blame-ignore-revs,查看正常的 blame 视图。在 URL 中,在 SHA 后追加一个 ~Ignoring revisions in .git-blame-ignore-revs 横幅即会消失。

使用 Copilot 理解文件

注意

你需要拥有 GitHub Copilot 的访问权限。有关详细信息,请参阅 GitHub Copilot 是什么?

您也可以使用 Copilot 询问文件中具体代码行的相关信息,帮助您理解代码的工作原理,降低引入新问题的风险。

  1. 在 GitHub 上,导航到一个仓库并打开文件。

  2. 执行以下操作之一

    • 要询问关于 整个文件 的问题,点击 Copilot 图标()在文件视图右上角。

      Screenshot of the Copilot button, highlighted with a dark orange outline, at the top of the file view.

    • 要询问文件中 特定行 的问题

      1. 点击您想询问的第一行的行号,按住 Shift,然后点击最后一行的行号以进行选择。
      2. 要对所选行提出自己的问题,请点击 Copilot 图标()在所选区域的右侧,然后在 GitHub Copilot 聊天面板中输入您的问题。
      3. 要提出预设问题,点击 Copilot 图标旁的下拉菜单,然后选择其中一个选项。

      Screenshot of the Copilot buttons, highlighted with a dark orange outline, to the right of some selected code.

  3. 如果您点击了 Copilot 图标,请在聊天面板底部的“Ask Copilot”框中输入问题,然后按 Enter

    例如,如果您在询问整个文件,可以输入

    • 解释此文件。
    • 我该如何改进这段代码?
    • 我该如何测试此脚本?

    如果您在询问特定行,可以输入

    • 解释所选行的函数。
    • 我该如何改进此类?
    • 为此代码添加错误处理。
    • 为此方法编写单元测试。

    Copilot 会在面板中响应您的请求。

  4. 可选地,在提交问题后,你可以点击文本框中的按钮来停止响应。

  5. 您可以通过提出后续问题继续对话。例如,输入 “tell me more” 让 Copilot 扩展其上一次的评论。

© . This site is unofficial and not affiliated with GitHub, Inc.