簡體   English   中英

未顯示大型 github 提交差異

[英]Large github commit diff not shown

這發生在我身上,比較視圖以及更改的文件量很大的標准提交。

下面的屏幕截圖來自兩個分支之間的比較,其中更改了 380 個文件。 差異日志開頭的文件具有可視化的差異,但在頁面下方的某個點,它停止可視化差異。 我知道您不想要大量頁面,但我似乎無法找到單獨查看文件差異的方法。 相反,我必須在本地檢查這些並手動進行差異。

有沒有人有更簡單的解決方案,無論是軟件驅動還是(最好)我在 github 上丟失的鏈接?

差異截圖

.patch添加到 URL 的末尾有些幫助。 當然,刪除了漂亮的 UI 和評論功能。

一個例子。 如果你的拉取請求是: https://github.com/JustinTulloss/zeromq.node/pull/47 ,那么補丁可以在https://github.com/JustinTulloss/zeromq.node/pull/47.patch找到

截至 2013 年 2 月 19 日,官方支持答案來自 Brian Levin @github。

我們對在瀏覽器中顯示的差異有一些限制,以保持拉取請求和比較頁面的工作。 目前,我們將它們截斷為 300 個文件,總差異為 1MB,單個差異為 100KB。

如果您的差異超出限制並且無法在線查看,您可以隨時在本地提取更改並在那里查看差異。 這對您來說可能不太方便,但它可以完成工作。

這聽起來像是 github 上的一個錯誤。 但是您可以在命令行上使用 git diff 看到類似的統計信息。 如果你真的想要一個圖形工具,也許安裝像 meld 這樣的東西會有所幫助。

git config --global diff.tool meld
git difftool master..devel

我發現使用的最好的本地比較是使用 IntelliJ 的內置比較。 添加評論很痛苦,但其他一切都運行良好。 執行以下步驟:

  1. 確定您感興趣的文件,說“myClass.java”
  2. 從您的開發和分支中提取最新版本,將其稱為 compare_branch
  3. 通過git checkout compare_branch結帳最新
  4. 打開 IntelliJ,並使用雙移完成來搜索您需要查看的文件,例如shift-shift myclass.java以導航到它。
  5. 在 IntelliJ 的菜單中,選擇VCS -> Git -> Compare with branch -> develop用你想要比較的任何東西替換develop

希望這對其他人有幫助。

如果你知道你想要哪個文件或目錄,你可以使用 GitHub File Diff 擴展,可用於ChromeFirefox

免責聲明:我做了這個擴展。

我遇到過同樣的問題。 如果您希望保持瀏覽器體驗,我找到了以下解決方案:

打開你的 JavaScript 控制台並執行:

document.querySelectorAll('button.load-diff-button').forEach(button => button.click());

這將凍結頁面,因為所有點擊事件同時被觸發。 有一些耐心和外翻將被加載。 顯然,如果文檔結構發生變化,則可能需要更新上述語句。

創建一個名為“加載所有差異”的書簽。 單擊它以在 GitHub PR 上顯示所有更改的文件。

有沒有人有更簡單的解決方案,無論是軟件驅動還是(最好)我在 github 上丟失的鏈接?

從我的 GitHub 要點這里

從這里的要點歸功於@Juanca

指示:

使用以下名稱URL字段在瀏覽器中創建這些書簽。 對於 URL 字段,只需完全按照所寫的方式復制和粘貼代碼塊、換行符和所有內容,包括頂部的javascript:行! 將換行符、空格和多行 C 樣式注釋(例如: /* comment */ )復制粘貼到 URL 字段以創建書簽時,都允許(至少在 Chrome 中測試過)。 創建包含此代碼的瀏覽器書簽后,將其放在瀏覽器頂部的書簽欄中,並在需要時單擊它們以運行指定的 Javascript 程序以執行規定的功能。

  1. 在 GitHub PR 審查期間查看“文件已更改”選項卡時,一些更改較多的文件可能會折疊。 GitHub 顯示了這些文件的“加載差異”鏈接,並在此鏈接下方以小字體表示:“默認情況下不呈現大差異。”。 這使得無法使用 Ctrl + F 在頁面中搜索這些文件中的某些代碼或文本,並且手動向下滾動並一次一次單擊“加載差異”鏈接可能會很乏味文件。 因此,單擊下面的“加載所有差異”書簽以快速顯示(加載)所有文件的差異。

    名稱: “加載所有差異”

    網址:

     javascript: /* Load all diffs by expanding all files in the "Files changed" tab during a GitHub PR review. Source: https://gist.github.com/juanca/5fd799c5b094e3e4f8b709cd101d7403 */ document.querySelectorAll('.load-diff-button').forEach(node => node.click())

現在單擊瀏覽器頂部的加載所有差異書簽以在 GitHub PR 代碼審查期間顯示所有文件。 完畢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM