【问题标题】:View the change history of a file using github.com使用 github.com 查看文件的更改历史
【发布时间】:2013-07-27 03:41:27
【问题描述】:

我找到了this post 关于使用命令行的信息,但是是否可以在 github.com 的存储库中查看单个文件的文件更改历史记录?

浏览器内的解决方案可以帮助我在会议期间更好地向团队成员说明更改。

【问题讨论】:

    标签: git github


    【解决方案1】:

    2021 年 4 月,用于文件历史探索的 GitHub 功能变得更好:

    "View file at a specific point in the commit history"

    当查看单个文件的提交历史时,用户现在可以点击查看历史中选定点的文件。

    从那里输入“b”作为该提交中该文件的责备视图,然后explore its changes:

    通过责备视图,您可以查看整个文件的逐行修订历史记录,或单击查看文件中单行的修订历史记录。

    每次点击,您都会看到该行之前的修订信息,包括谁提交了更改以及何时提交。

    【讨论】:

      【解决方案2】:

      Github Desktop 和 github.com 的历史差异功能非常有限。

      选项1(首选):迁移到Atlassian Bitbucket;整体体验更好;与 JIRA 等集成。

      选项 2:如果您使用的是 Windows - 请尝试 Tortoise GIT desktop client;具有显示日志功能,我发现这对并排差异非常有用。

      【讨论】:

        【解决方案3】:

        我认为git-history 是快速浏览任何 Git 存储库中文件历史记录的另一种好方法。

        您无需下载任何内容。您只需要替换 URL 中的一些文本即可。

        要做的步骤:

        1. 转到 GitHub(或 GitLabBitbucket)中的文件
        2. github.com 替换为github.githistory.xyz

        ChromeFirefox 扩展可以在GitHub、GitLab 和Bitbucket 上添加Open in Git History 按钮,这样你就不需要记住第2 步了。

        欲了解更多信息,您可以前往其GitHub page

        【讨论】:

          【解决方案4】:

          截至目前,如果您想在 GitHub 上轻松查看所有更改记录,我没有找到简单的方法来做到这一点在浏览器中

          您如何查看 GitHub 上的一次提交更改历史记录:

          1. 您访问任何文件,比如 GitHub 上的 hello.cpp,单击“历史记录”按钮,然后您可以看到更改此文件的提交。
          2. 然后通过单击每个提交的“sha”按钮,您可以看到整个提交。
          3. 然后找到hello.cpp,点击“查看文件”按钮。最后你只看到了 本次提交 - 上次提交。

          所以如果你想查看所有的历史变化,你必须重复上面的过程很多次..并打开很多标签...


          您可以使用gitk [filename](GUI) 或git log -p filename(命令行) 轻松查看单个文件的所有历史更改。

          来源:View the change history of a file using Git versioning

          【讨论】:

            【解决方案5】:

            你可以先看这篇官方文章,然后我给你演示一下!

            https://developer.github.com/v3/repos/commits/

            这里是演示,使用 fetch API

            PS:client_id & client_secret 你应该自己用!

            let username = `xgqfrms-GitHub`;
                 repo = `Node-CLI-Tools`;
            
            fetch(`https://api.github.com/repos/${username}/${repo}/commits`,{
                data: {
                    client_id: '08ecc2f68d922f188xxx',
                    client_secret: '5846d428b5340812b76c9637eceaee979340bxxx'
                }
            })
            .then((response) => response.json())
            .then((json)=> {
                console.log(`json = ${json}`);
                return repos = json;
            })
            .then((repos)=>{
                console.log(`repos = ${repos}`);
                console.log(`repos = ${repos.length}`);
                for (let i = 0; i < repos.length; i++) {
                    console.log(`repos${i}  = ${repos[i].commit.message}`);
                }
            });

            【讨论】:

              【解决方案6】:

              正如@BurhanKhalid 所说,但这里解释为“GitHub 快速指南”,带有 URL 语法:

              1. https://github.com/&lt;USER&gt;/&lt;PROJECT&gt;浏览您的项目...
              2. ... 那么您有一个以文件路径结尾的 URL:https://github.com/&lt;USER&gt;/&lt;PROJECT&gt;/blob/master/&lt;PATH&gt;
              3. 现在你已经拥有了,只是将“blob/master”更改为“commits/master”:https://github.com/&lt;USER&gt;/&lt;PROJECT&gt;/commits/master/&lt;PATH&gt;

              PS:要记住“commits/master”,请单击项目主页中的“Commit”链接。

              Ops:有a similar answer here,@TimHenigan用http://github.com/&lt;username&gt;/&lt;project&gt;/commits/&lt;branch&gt;/&lt;path/to/file&gt;表示


              GitHub 开发团队的问题

              为什么不为这种浏览提供直接链接?我们需要它,就像维基百科的读者需要“历史”链接一样!


              Ops,GitHub 的团队在听我们的吗?

              现在(2014 年 6 月)当您浏览文件夹时,会出现一个图标,请参见右上方的“浏览提交”。当您点击时,tree/master URL 变为commits/master

              仍然缺少相同的文件,如此处所示,但这是一种演变。

              【讨论】:

                【解决方案7】:

                在 Google Chrome 网上商店中结帐Little Differ。它是一个 Chrome 扩展程序,显示一个侧边栏,显示存储库或文件的提交历史记录。

                【讨论】:

                  【解决方案8】:

                  您可以通过单击历史记录按钮或将commits 添加到文件的 URL 来查看文件的更改历史记录。这是 GitHub 上 Homebrew 存储库中文件的样子:

                  https://github.com/mxcl/homebrew/commits/master/SUPPORTERS.md

                  要获得逐行的历史记录,只需将要查看差异的提交的SHA-1 字符串添加到单词commit 之后的URL 中,然后使用您所在的文件名锚定它有兴趣。对于上面的同一个文件:

                  https://github.com/mxcl/homebrew/commit/288f001e924d5365b79c279e4478f372a04011ae#SUPPORTERS.md

                  【讨论】:

                  • 我可能只是个盲人,但是这个“历史”按钮在哪里?
                  • 我认为这个答案已经过时了。我已经尝试了第二个链接示例,现在添加锚点 #filename 完全没用,无论您是否添加 #filename,Github 都会显示所有文件的不同。
                  • 你说的是GitHub Desktop application吗?无论如何,也许更新你的答案?
                  • @jozxyqk ,“历史”不是按钮,它是可点击的文本。今天(2020-10-30),我发现它在屏幕右边缘,距离地址栏约 4 英寸,旁边有一个倒转的时钟图标。
                  • 如果有人错过了History 按钮,他们可能想尝试一个 Tampermonkey 脚本,在 GitHub 页面上添加类似 GitLab 的 History 按钮:gist.github.com/foka/881a73313348927d547420101259abda
                  【解决方案9】:

                  查看https://github.com/pomber/git-history 一个非常方便的 UI 工具(和插件)可视化文件随时间的变化。

                  【讨论】:

                    猜你喜欢
                    • 2010-09-21
                    • 1970-01-01
                    • 2012-08-10
                    • 2012-12-21
                    • 1970-01-01
                    • 2012-12-30
                    • 2023-03-25
                    • 1970-01-01
                    相关资源
                    最近更新 更多