Skip to main content

查看并了解文件

浏览文件内容和跟踪随时间的更改,了解新的基本代码库及其演变。

GitHub 提供了查看原始内容、跟踪特定行的更改以及探索文件内容随时间演变的工具。 这些见解解释了代码的开发过程、当前目的和结构,帮助你更有效地做出贡献。

查看或复制原始文件内容

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

  1. 在 GitHub 上,导航到存储库的主页面。

  2. 单击要查看的文件。

  3. 在文件视图的右上角,单击“原始”。

    文件的屏幕截图。 在标题中,标有“原始”的按钮以深橙色框出。

  4. (可选)若要复制原始文件内容,请在文件视图右上角单击 。 若要下载原始文件,请单击“”。

查看文件的逐行修订历史记录

在追溯视图中,可以查看整个文件的逐行修订历史记录。

Tip

在命令行上,还可以使用 git blame 查看文件内各行的修订历史记录。 有关详细信息,请参阅 Git 的 git blame 文档

  1. 在 GitHub 上,导航到存储库的主页面。

  2. 单击以打开您想要查看其行历史记录的文件。

  3. 在文件内容上方,单击“追溯”。 此视图提供逐行修订历史记录,文件中的代码按提交分隔。 每个提交都会列出作者、提交说明和提交日期。

  4. 若要在特定提交之前查看文件的版本,请单击 。 或者,若要查看有关特定提交的更多详细信息,请单击提交消息。

    追溯视图中提交的屏幕截图。 提交消息和版本图标以深橙色标出。

  5. 若要返回到原始代码视图,请在文件内容上方单击“代码”。

    • 如果要查看 Markdown 文件,还可以在文件内容上方单击“预览”以返回到应用 Markdown 格式的视图。

忽略追溯视图中的提交

.git-blame-ignore-revs 文件中指定的所有修订(必须位于存储库的根目录中)利用 Git 的 git blame --ignore-revs-file 配置设置从追溯视图中隐藏。 有关详细信息,请参阅 Git 文档中的 git blame --ignore-revs-file

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

  2. 在该文件中添加要从追溯视图中排除的提交哈希。 建议按如下所示构建文件(包括评论):

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

现在,访问追溯视图时,追溯中将不会包含列出的修订。 你会看到“忽略 .git-blame-ignore-revs 中的修订”横幅,表明某些提交可能已隐藏:

“ipc-main-internal.ts”文件的追溯视图的屏幕截图。 蓝色横幅指出信息为“忽略 .git-blame-ignore-revs 中的修订”。 .git-blame-ignore-revs 文件链接以深橙色框出。

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

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

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

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

绕过追溯视图中的 .git-blame-ignore-revs

如果文件的追溯视图显示“忽略 .git-blame-ignore-revs 中的修订”,仍可以绕过 .git-blame-ignore-revs 并查看正常的追溯视图。 在 URL 中,将 ~ 追加到 SHA,“忽略 .git-blame-ignore-revs 中的修订”横幅将消失。

使用 Copilot 理解文件

Note

需要 GitHub Copilot 订阅。 有关详细信息,请参阅“什么是 GitHub Copilot?”。

你还可使用 Copilot 询问文件中的特定代码行,帮助你了解代码的工作原理并降低引入新问题的风险。

  1. 在 GitHub 中,导航到一个存储库并打开一个文件。

  2. 执行下列操作之一:

    • 要询问有关整个文件的问题,请单击文件视图右上角的 Copilot 图标 ()****。

      Copilot 按钮的屏幕截图,在文件视图顶部以深橙色边框突出显示。

    • 询问有关文件中特定行的问题****:

      1. 单击要询问的第一行的行号,按住 Shift 并单击要选择的最后一行的行号。
      2. 要询问有关所选行的问题,请单击所选内容右侧的 Copilot 图标 (),然后在 GitHub Copilot Chat 面板中键入你的问题。
      3. 要提出预定义的问题,请单击 Copilot 图标旁的下拉菜单,然后选择其中一个选项。

      屏幕截图显示了用深橙色轮廓突出显示的 Copilot 按钮,位于一些选定代码的右侧。

  3. 如果单击 Copilot 图标,请在聊天面板底部的“向 Copilot 询问问题”框中键入问题,然后按 Enter

    例如,如果要询问整个文件,可以输入:

    • Explain this file.
    • How could I improve this code?
    • How can I test this script?

    如果要询问特定行,则可以输入:

    • Explain the function at the selected lines.
    • How could I improve this class?
    • Add error handling to this code.
    • Write a unit test for this method.

    Copilot 将响应面板中的请求。

  4. (可选)单击文本框中的“”以阻止 Copilot 继续其响应。

  5. 可以通过提出后续问题来继续对话。 例如,可以键入“告诉我更多”以便让 Copilot 对其最后一条评论进行扩展。