精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Git如何處理大倉庫

開發 后端
git 是追蹤代碼庫演進的最佳選擇 ,并且它能讓你與你的同事間高效協作。當你想要追蹤的庫非常巨大時會發生什么?

git 是追蹤代碼庫演進的***選擇 ,并且它能讓你與你的同事間高效協作。當你想要追蹤的庫非常巨大時會發生什么?

在這篇文章里,我會嘗試著給你一些想法和技巧來恰當地處理不同種類的大倉庫。

兩種大代碼庫

如果仔細想想,大概會有兩種導致倉庫大規模增長的原因:

  • 項目累積了非常長的歷史(項目成長了很長一段時間并且積累了包袱)。

  • 項目包括了巨大的二進制資產,需要與代碼一起跟蹤配對。

  • 兩者皆有。

因此,倉庫的增長有兩個維度的方向:工作目錄的尺寸——例如:最近一次提交,和整個累積歷史的尺寸。

有時第二種問題會與老的過時的二進制生成的東西(artifact)混合,它們都被放在倉庫中,不過這類問題是比較容易處理的——如果它們很討厭,就覆蓋它們,見下文。

上述兩種場景需要的技巧和解決方案是不同的——盡管有時候需要互補——讓我們分別來處理它們吧。

處理擁有大量歷史記錄的庫

將一個庫視為 大規模 庫的界線非常高 - 比如 Linux 內核的***一個版本記錄了超過 1500 萬行代碼,但人們仍然愿意完整閱讀 - 由于監管/規定方面的原因,某些很老的項目仍然需要保持完整,克隆它們是件痛苦的事情(現在通過拆分 Linux 庫的方式使其結構清晰,它被拆分為歷史庫和最近時期的庫,需要通過嫁接設置來訪問完整的歷史記錄)。

淺克隆是簡單的的解決辦法

為了更快、更節省開發者和系統時間也更節約磁盤空間,***個解決辦法是使用 git 進行淺克隆。通過淺克隆可以只克隆某個庫***的歷史記錄。

怎么做到?只需要使用 --depth 選項,比如:

git clone --depth depth remote-url

想像一下,如果你的項目庫中積累了 10 年甚至更長時間的歷史記錄 - 比如 JIRA 是我們往 git 遷移的一個 11 年的老庫 - 累積節約的時間非常顯著。

完整的克隆 JIRA 有 677 MB,如果包含工作目錄還有另外的 320+ MB,總共超過 47,000 多次提交。通過淺克隆的方式檢出 JIRE 需要 29.5 秒,而檢出完整的歷史記錄則需要 4 分 24 秒。隨著時間地推移及項目二進制資產的增長,這個差距也會成比例的增長。任何情況下,構建系統都會大大受益于這種技術(指淺克隆)。

最近 git 改善了對淺克隆的支持

過去淺克隆就像 git 世界里的殘障人士一樣,某些操作并未得到支持。不過最近的版本 (1.9+) 對此有著顯著的改善,現在甚至可以適當的對淺克隆庫使用 pull 和 push 操作。

另一個解決辦法是 filter-branch (過濾分支)

巨大的庫往往存在著大量錯誤的提交或無用的資源,對此,使用 filter-branch 是個很好的解決辦法。這個命令可以根據預先定義的模式對項目歷史進行過濾、 整理 、修改,甚至跳過一些文件。它是 git 工具集中的一個非常強大的工具。目前已經有腳本可以用于識別 git 庫中的大型對象,所以它使用起來非常容易。

使用 filter-branch 的示例:

git filter-branch --tree-filter 'rm -rf /path/to/spurious/asset/folder' HEAD

filter-branch 有一個小小的缺點:一旦使用了 filter-branch,實際上已經重寫了整個項目歷史,因此每次提交的 ID 都會發生變化。這要求每個開發者都要重新克隆更新后的庫。

所以,如果你打算使用 filter-branch 來進行一次清理行動,應該警告你的團隊,計劃一個短期的凍結來進行操作,然后通知大家重新克隆庫。

淺克隆的替代者:只克隆一個分支

從 2012 年 4 月發布的 git 1.7.10 開始,你可以通過只克隆某一個分支來限制歷史記錄的數量,就像這樣:

git clone URL --branch branch_name --single-branch [folder]

對于長期運行分發的分支,或者你在有很多分支的情況下,這個特殊的技巧都非常有用。如果你只有極少數分支,那這個辦法不會帶來顯著的效果。

Stack Overflow 參考

處理擁有巨大二進制資產的庫

第二類大型倉庫中的代碼含有 巨大的二進制資產 。游戲團隊要處理巨大的 3D 模型,Web 開發團隊需要跟蹤圖像資產,CAD 團隊可能需要操作和跟蹤二進制交付物的狀態。所以有各種不同的軟件團隊在使用 git 的過程中會遇到這樣的問題。

git 在處理二進制資產的時候并不是特別差勁,但它也不會干得特別好。默認情況下,git 會完整壓縮存儲二進制資產的所有后續版本,如果你有很多二進制資產的情況下,這顯然不是***方案。

可以通過一些 基本的調整來改善情況 ,比如運行垃圾回收 git gc,或者在 .gitattributes 中對部分二進制類型進行調整,以使用 delta 方式的提交。

不過有一點很重要,對項目中不同性質的二進制資產可能需要不同的方法。例如,這里需要檢查三個方面(感謝 Stefan Saasen 的評論):

  • 對于變化顯著的二進制文件 - 這是指不僅只有元數據頭變化 - 這時增量壓縮可能沒什么作用,建議對這些文件關閉 delta 選項,以避免不必要的增量壓縮并重新打包

  • 對于上述情形,就像某些文件通過 zlib 壓縮并不會有多好的效果,你使用 core.compression 0 或 core.loosecompression 0 來關閉壓縮功能一樣;這是一個全局設置,它會對其它壓縮效果不錯的非二進制文件帶來負面影響。因此建議你把二進制資產放在單獨的庫中。

  • 一定要記住 git gc 將“重復的”松散的對象變成一個單獨的包文件,除非以任何方式壓縮文件都不會使生成的包文件有顯著差異。

  • 探索調整 core.bigFileThreshold 帶來的效果。任何大于 512 MiB 都不會采用 delta 壓縮 - 如果沒有設置 .gitattributes 的話 - 所以這樣的調整值得一試。

技巧1: 稀疏檢出

一個溫和的管理二進制資產問題的方法是 稀疏檢出 (從 Git 1.7.0 之后可用)。我們可以通過顯式地詳細說明要填充的文件夾來保持工作目錄的清潔。 不幸的是,它并不能影響整個本地存儲庫的大小,但如果你有一個巨大的樹形文件夾,這可能是有用的。

涉及到哪些命令呢? 示例如下( credit ):

  • 僅克隆全部存儲庫一次::git clone <repository-address>

  • 激活以下功能:git config core.sparsecheckout true

  • 添加那些需要顯式依賴的文件夾,忽略 assets 文件夾:

echo src/ ? .git/info/sparse-checkout
  • 讀取指定的樹目錄:git read-tree -m -u HEAD

之后,你可以使用正常的 git 命令了,但你的工作目錄將只包含你指定的文件夾。

技巧2:使用子模塊

還有另一種處理二進制資產目錄的的方法,就是把它們拆分到一個單獨的庫,然后在主項目是通過把它拉取為 子模塊 。使用這種方法你可以控制資產的更新。需要了解子模塊,可以看看: 核心概念與技巧 和 另一個選擇 。

如果你想繼續使用子模塊的方法,你可能需要檢查 項目依賴 的復雜性。我提到的方法對解決大型二進制文件問題會有所幫助。

技巧3:使用 git-annex 或 git-bigfiles

git 中處理二進制資產的第3個選擇依靠第三方擴展。

我要說的***個擴展是 git-annex ,它可以使用 git 管理二進制文件,但不需要把文件內容檢入庫中。git-annex 使用一個特殊的鍵值庫來保存文件,然后將符號鏈接像普通文件一樣檢入 git 庫中進行版本管理。這種用法非常直接,還有 一看就能明白的例子

第二個擴展是 git-bigfiles ,一個 git 分支, 適合于使用 git 分享項目大文件的人

不要因為你的庫有著巨大的歷史記錄或巨大的資產就放棄 git。這兩個問題都可以得到解決。

 

責任編輯:張燕妮 來源: 開源中國社區
相關推薦

2019-08-15 10:20:19

云計算技術安全

2012-12-12 09:49:41

2020-12-29 09:11:33

LinuxLinux內核

2019-12-23 10:20:12

Web圖片優化前端

2017-10-26 08:43:18

JavaScript內存處理

2021-03-01 07:31:53

消息支付高可用

2021-05-31 10:47:17

SpringSecuritySession

2023-07-03 13:50:13

ReactonResize事件

2022-04-19 09:00:52

ReactTypeScript

2024-08-26 10:47:22

2010-05-17 10:04:45

2024-04-16 13:32:57

2023-01-04 10:01:21

ReactTypeScript元素

2011-02-28 14:08:31

網速變慢局域網網速

2025-01-09 10:20:53

2021-03-24 10:40:26

Python垃圾語言

2010-09-01 15:40:10

DHCP服務器

2011-12-15 12:32:19

JavaNIO

2023-06-13 07:34:10

2018-11-21 12:27:21

JavaScript 貨幣值區域
點贊
收藏

51CTO技術棧公眾號

蜜桃视频在线观看www| 性欧美一区二区| 麻豆视频在线看| 久久精品一二三| 亚洲自拍在线观看| 欧美三级一区二区三区| 久久密一区二区三区| 亚洲福利视频免费观看| 99热这里只有精品在线播放| 香蕉久久aⅴ一区二区三区| 99国产精品久久久久久久久久| 国产精品久久久一区| 久久久一二三区| 欧美国产一区二区三区激情无套| 亚洲国产精品推荐| 尤物网站在线看| 久久精品女人天堂av免费观看| 亚洲男人天堂一区| 神马影院我不卡| 五月婷婷六月丁香综合| 国产在线精品不卡| 国产精品看片资源| 99久热在线精品996热是什么| 亚洲综合自拍| 三级精品视频久久久久| 日本黄色特级片| av在线亚洲色图| 欧美一级日韩免费不卡| 日韩爱爱小视频| 性欧美videohd高精| 天天免费综合色| 日本黄大片在线观看| 欧美三级理伦电影| 国产精品欧美久久久久一区二区| 精品日韩欧美| 老牛影视av牛牛影视av| 国内精品在线播放| 国产综合久久久久| 一二三四区在线| 免费人成黄页网站在线一区二区 | 超碰97人人在线| 亚洲系列在线观看| 免费xxxx性欧美18vr| 日本欧美中文字幕| 4438国产精品一区二区| 一区二区日本视频| 高清一区二区三区日本久| 欧美日韩在线视频免费播放| 性欧美欧美巨大69| 久久精品国产精品| 在线观看成人毛片| 欧美三级小说| 久久久久久国产精品| 久久久久久久久久综合| 欧美特黄一级| 高清欧美一区二区三区| 久久国产精品系列| 亚洲综合国产| 国产精品电影网| 国产精品成人久久久| 美女视频网站黄色亚洲| 国产精品香蕉国产| 国产精品久久免费| 成人毛片在线观看| 欧美成人在线免费观看| 男生女生差差差的视频在线观看| 久久网站热最新地址| 国产一区二区三区色淫影院| 欧美精品少妇| 欧美国产日产图区| 天天成人综合网| 青草影视电视剧免费播放在线观看| 夜夜揉揉日日人人青青一国产精品| wwwwww欧美| 正在播放日韩精品| 欧美三级资源在线| 少妇精品无码一区二区| 欧美调教视频| 色七七影院综合| 激情五月婷婷小说| 久久精品一本| 成人xxxxx| 熟妇高潮一区二区三区| 国产清纯白嫩初高生在线观看91 | 欧美四级电影网| 一级淫片在线观看| 欧美精品国产白浆久久久久| 亚洲欧美日韩网| 99热这里只有精品4| 韩国在线视频一区| 国产精品va在线| www黄色在线观看| 久久久久国色av免费看影院| 一本一道久久a久久精品综合| 国产第一页在线视频| 色婷婷国产精品| 日本一本在线视频| 美腿丝袜亚洲图片| 久久精品视频播放| 国产午夜麻豆影院在线观看| 国产精品亚洲成人| 日本一区二区三区免费看| 人人澡人人添人人爽一区二区| 日韩欧美亚洲范冰冰与中字| 久久人人爽人人片| 精品视频99| 97超碰国产精品女人人人爽| 亚洲中文一区二区三区| 久久欧美中文字幕| 4444在线观看| 成人精品国产亚洲| 精品亚洲一区二区三区在线观看| 国产67194| 全国精品久久少妇| 欧美二区在线看| 欧美xxxx性xxxxx高清| 精品视频123区在线观看| 荫蒂被男人添免费视频| 影音先锋日韩在线| 国产日韩在线免费| 成人在线免费视频| 狠狠做深爱婷婷久久综合一区 | 波多野结衣 久久| 国产成人在线视频网站| 亚洲五月六月| 色8久久影院午夜场| 亚洲精品第一国产综合精品| 性色av无码久久一区二区三区| 水野朝阳av一区二区三区| 国产一区二区三区无遮挡| 欧美人与动牲性行为| 欧美区一区二区三区| jizz18女人高潮| 日韩高清不卡一区二区| 明星裸体视频一区二区| 在线播放高清视频www| 亚洲激情在线观看| 国产精品不卡av| 处破女av一区二区| 欧美国产视频一区| 综合伊人久久| 欧美极品第一页| 东京干手机福利视频| 亚洲精品写真福利| 佐佐木明希电影| 影音先锋久久| 粉嫩av免费一区二区三区| 图片区小说区亚洲| 精品国免费一区二区三区| 久草视频免费在线| 成人激情黄色小说| 日韩精品视频在线观看视频| 中文字幕亚洲在线观看| 欧美激情综合色| 四虎永久在线精品免费网址| 午夜在线成人av| 日韩中文字幕电影| 日本欧美加勒比视频| 水蜜桃亚洲精品| 日本中文字幕视频一区| 久久精品中文字幕| 亚洲av综合色区无码一二三区| 亚洲午夜在线视频| 极品粉嫩小仙女高潮喷水久久| 亚洲欧美成人| 亚洲国产欧洲综合997久久| 成人国产在线| 欧美视频一区二| 国产精品一区二区免费在线观看| aiss精品大尺度系列| 97香蕉久久夜色精品国产| 杨幂一区二区国产精品| 高清毛片在线观看| 亚洲精品wwww| 男操女视频网站| 在线日韩av片| 最近的2019中文字幕免费一页| 在线不卡免费视频| 三级欧美在线一区| 亚洲欧美国产精品桃花| 国产精品久久久久久av公交车| 色综合视频一区中文字幕| 日韩一区免费视频| 欧洲av在线精品| 免费在线黄色网| 91在线视频免费观看| 91精品国产综合久久香蕉麻豆| 污污网站免费观看| 午夜国产精品视频| 欧美精品与人动性物交免费看| 久久夜夜久久| 国产综合在线看| 在线观看av黄网站永久| 精品成人在线观看| 欧美日韩国产影片| 免费毛片网站在线观看| 香蕉久久精品| 成人黄色免费片| 91超碰免费在线| 在线看日韩欧美| 免费a视频在线观看| 欧美在线观看一区| 99久久免费看精品国产一区| 澳门久久精品| 国产91精品在线播放| 老司机午夜在线| 亚洲毛片一区二区| 性一交一乱一伧老太| 在线免费观看视频一区| 国产亚洲欧美精品久久久久久| 国产日韩一级二级三级| 性欧美视频videos6一9| 日韩三级视频在线| 欧美激情一区二区三区在线| 被黑人猛躁10次高潮视频| 乱码第一页成人| 精品国产一区二区三区无码| 日产午夜精品一线二线三线| 精品国产综合久久| 亚洲一区二区三区四区电影| 免费在线黄色网| 蜜臀av一区二区| 欧美 丝袜 自拍 制服 另类| 亚洲免费二区| 三区精品视频| 在线一级成人| 国产精品日韩一区二区免费视频| 欧美少妇激情| 国产精品久久久久久搜索| 正在播放日韩精品| 欧美在线性视频| 色一区二区三区| 国a精品视频大全| 手机在线免费av| 毛片精品免费在线观看| 国产在线观看免费麻豆| 日韩亚洲欧美成人| 免费在线观看黄色网| 中日韩午夜理伦电影免费 | 欧美日韩国产一二三区| 久久久久久99精品| 中文字幕免费在线看线人动作大片| 久久这里只有精品6| 久久亚洲AV成人无码国产野外| 99久久99久久免费精品蜜臀| 国产69视频在线观看| 大陆成人av片| 久久久久亚洲av无码专区桃色| 97久久超碰国产精品| 一本色道综合久久欧美日韩精品| 91社区在线播放| 中文字幕免费高清| 欧美韩国一区二区| 亚洲色图100p| 亚洲精品日韩一| 在线免费观看毛片| 午夜久久久影院| 无码人妻精品一区二区50| 欧美专区在线观看一区| 中文字幕一区二区三区免费看 | 2019中文字幕在线| 黑人巨大精品| 国产美女久久精品| 视频成人永久免费视频| 久久99国产精品| 国产一区二区观看| 超碰成人在线免费观看| 欧美视频网站| 成年人在线看片| 狠狠色综合日日| 亚洲麻豆一区二区三区| 久久久影视传媒| 中文字幕第69页| 亚洲大片精品永久免费| 日本中文字幕在线| 欧美日韩卡一卡二| 欧美 日韩 国产 成人 在线 91| 日韩精品免费在线视频观看| 国产在线你懂得| 久久国产精品久久久久久| 毛片在线网站| 国产日韩欧美在线看| 136福利精品导航| 日韩精品久久久毛片一区二区| 99久久夜色精品国产亚洲1000部| 91.com在线| 免费在线欧美视频| 国产精品熟妇一区二区三区四区 | 伊人久久久久久久久久久久久久| 亚洲永久精品国产| 天堂免费在线视频| 精品国产sm最大网站免费看| 国产精品久久久久久久龚玥菲 | 91午夜视频在线观看| 欧美日免费三级在线| 亚洲精品国偷拍自产在线观看蜜桃 | 国产精品69页| 东方aⅴ免费观看久久av| 无码少妇精品一区二区免费动态| 亚洲精品va在线观看| 波多野结衣大片| 欧美精品一区二区三| 日本在线视频站| 欧美在线中文字幕| 91精品短视频| 男女h黄动漫啪啪无遮挡软件| 免播放器亚洲| av免费观看不卡| 亚洲四区在线观看| 国产亚洲欧美在线精品| 精品不卡在线视频| 求av网址在线观看| 国产精品美女av| 久久不卡国产精品一区二区| 国产人妻人伦精品| 紧缚捆绑精品一区二区| 99久久人妻无码精品系列| 一区二区三区在线免费| 91丨九色丨丰满| 国产一区二区三区久久精品| 夜鲁夜鲁夜鲁视频在线播放| 成人黄动漫网站免费| 亚洲成人一区| 亚洲一区二区三区四区五区| 久久欧美一区二区| 欧产日产国产69| 国产丝袜精品视频| 老色鬼在线视频| 精品一区久久久久久| 亚洲经典视频在线观看| 美国黄色一级视频| 亚洲一区二区三区中文字幕| 国产毛片久久久久| 久久精品免费播放| 成人精品视频在线观看| 中文字幕欧美日韩一区二区| 美日韩一级片在线观看| 91精品久久久久久久久久久久| 色妹子一区二区| 国产精品久久久久久久龚玥菲 | 国产sm主人调教女m视频| 久久夜色精品亚洲噜噜国产mv| 精品美女一区| 中国人体摄影一区二区三区| 久久精品国产免费看久久精品| 娇妻被老王脔到高潮失禁视频| 欧美中文字幕久久| 欧美成人hd| 91久久国产婷婷一区二区| 久久久久久久久国产一区| 51自拍视频在线观看| 亚洲激情第一区| 国产综合无码一区二区色蜜蜜| 久久久久久久久国产| 欧洲精品一区| 不卡av免费在线| 中文字幕在线不卡一区二区三区| 国产精品一区二区黑人巨大| 久久中文精品视频| 福利欧美精品在线| 国产又黄又大又粗视频| 国产午夜一区二区三区| 一区二区三区在线免费观看视频| 日韩在线欧美在线国产在线| 国产成人久久精品一区二区三区| 欧美日韩午夜爽爽| 91麻豆swag| 最近中文字幕在线免费观看| 久久久久www| 国产精品调教视频| 北条麻妃视频在线| 亚洲视频一区二区免费在线观看| 亚洲精品久久久蜜桃动漫| 性色av一区二区咪爱| 黄色不卡一区| 精产国品一区二区三区| 欧美日韩国产综合新一区| avav免费在线观看| www.成人三级视频| 首页综合国产亚洲丝袜| 欧美偷拍第一页| 亚洲奶大毛多的老太婆| 亚洲视频自拍| 男女午夜激情视频| 亚洲欧美偷拍卡通变态| 天天操天天爱天天干| 国产精品网站入口| 伊人激情综合| 国产又黄又粗又猛又爽的| 亚洲精品在线免费观看视频| 素人啪啪色综合| 国产玉足脚交久久欧美| 中文字幕欧美日本乱码一线二线| www.亚洲黄色| 国产精品久久久亚洲| 日韩午夜电影| 国产成人av免费在线观看| 日韩经典第一页| 日韩三级av高清片| 手机看片福利盒子久久|