2015-07-21 71 views
2

我們面臨的問題是git pull花費太多時間,最後只是失敗。我們正在使用公司Gitlab。如何調試花費太多時間的「git pull」?

當它發生

我的一個同事更新回購一些巨大的視頻和圖像文件。 而我們試圖拉代碼可能是因爲這些文件其過長和失敗也。

我們試圖

所有這些都不能解決問題:

  1. 我們移除了從回購的文件。添加到git忽略。
  2. git filter-branch
  3. 我們嘗試使用this technique完全刪除大文件。
  4. git filter-branch之後嘗試了命令git gc

但我的同事,他能拉碼非常快,

  1. 可能是因爲他已經在他的當地
  2. 或者,也許他正在使用SSH文件,我們沒有加入它。

錯誤

遠程:計數目標:1279,完成。 遠程:壓縮對象:100%(880/880),完成。致命:遠端意外掛斷MiB | 致命: 743.00 KIB/s的
致命的:早EOF 致命的:指數型包失敗

編輯

  1. 我們周圍的作品已經從他的系統
  2. 複製複製的項目文件夾到我的系統一樣新鮮。
  3. 創建新的SSH密鑰
+0

可能的重複[如何從Git存儲庫中的提交歷史中刪除/刪除大文件?](http://stackoverflow.com/questions/2100907/how-to-remove-delete-a-large-file- from-commit-history-in-git-repository) – Buddy

+1

你的意思是你的同事使用ssh而你自己沒有使用它? –

+0

@MusannifZahir我試圖用我現有的代碼,它不工作。然後,我嘗試獲得他的代碼並創建了新的ssh密鑰,然後開始工作。但我需要複製的本地更改將它燒盡。 – Pramod

回答

4

你的同事的同步更快,因爲他已經有一個分支。這聽起來像你可能沒有使用git filter-branch正確刪除大文件。查看歷史記錄以確保它不再存在。

您可能還需要運行git gc進行垃圾回收。

+0

我的問題是,在他將所有文件更新爲回購之後,我試圖拉代碼花費太多時間,但也失敗了。之後他直接從回購中刪除了同樣的問題。我試過這些命令也存在同樣的問題。 – Pramod

+0

@Pramod我懷疑回購仍然有文件 - 否則不應該花費太長時間。你可以嘗試運行'git filter-branch --tree-filter'rm -f path/to/videos'HEAD'。這將在每個快照中運行remove命令,無論它是否存在 - 您需要更新remove命令。你的同事應該在本地運行這些命令並更新遠程回購。 –