git中每次提交的成本是多少?例如,如果我同時提交更改A和B而不是分別對每個提交提交,那麼使用多少(或更少)空間?git - 每次提交的代價
回答
TLDR:我直觀地預測,如果沒有測試,實際使用情況的差異是最小的。如果你每天做數千次提交,也許你應該對此進行更多的分析。
我的思考過程:每個提交包含一個提交消息,樹和blob。請參閱Git for Computer Scientists以瞭解更多信息。將blob看作是一個文件的差異。總的來說,平均而言,我不希望在兩個blob而不是一個之間做出改變。所以你剩下的是一個額外的樹對象和一個額外的提交消息。 (一棵樹的對象是一個子目錄和文件名,告訴混帳哪裏應用斑點 - 的DIFF提交信息正是你認爲它是。)
所以把一些瞎猜它:
- 樹對象可以是10至100個字節
- 提交消息可以是10至200個字節
通過這些估計,20至300更多的字節翻倍手段〜。
(注:以上這種分析並不在磁盤分配因子,因此其可能是大錯特錯)
不錯的鏈接,非常翔實! – darkfeline
新創建的對象通常是鬆散的對象。
爲每個鬆散物體在磁盤上佔用4K最小值。
一次提交至少包含一個提交對象,一個樹對象和一個blob對象。
如果允許爲空(無文件更改),那麼只有一個提交對象,但這不是經常使用的。
因此,12K是最小的!
除了鬆散的物體有時會被打包,並且這些12k的最小值小於1k的實際數據。 –
- 1. git rebase在todo中提交每次提交的文件
- 2. GIT - 每小時(提交和未提交)
- 3. 每週期提交Git提交
- 4. Git提交代數
- 5. Git撤消上次提交
- 6. GIT:恢復上次提交?
- 7. Git結帳多次提交
- 8. git rebase一次提交
- 9. 提交代碼在Git中,分支在源頭提交一次提交
- 10. Git所有分支上每位作者的提交次數
- 11. 時間跟蹤+ Git:每次提交的測量工作量
- 12. Git說我提前2次提交
- 13. Git:提前一次提交頭文件
- 14. git cherry:如何通過提交消息識別等價提交
- 15. 獲得每個git的文件提交
- 16. 每個分支的Git提交鉤子
- 17. 恢復git中的多次提交
- 18. 再次基於Git的提交歷史
- 19. git的櫻桃挑選多次提交
- 20. AJAX表單提交 - 每次點擊提交表格i ++次數
- 21. 刪除兩次提交之間的git提交
- 22. 查找所有符合特定「提交次數」的git提交
- 23. 兩次提交出現在每次合併的日誌中
- 24. 上一次提交Git標籤
- 25. git分支前幾次提交?
- 26. Git:如何克隆第一次提交?
- 27. 第一次提交Git結賬
- 28. 在git中分裂第一次提交
- 29. 在git中一次提交一個
- 30. 撤消git上次提交推送
你讀過http://eagain.net/articles/git-for-computer-scientists/?它給你一個Git對象模型的概念。 –
您究竟需要如何量化?你的用例是什麼? –