Git benzeri bir dosya sistemi var mı?


27

Git, herhangi bir dosyanın hesaplanan karma değerine göre içeriği benzersiz olarak depoda saklar. Dizinimde aynı dosyanın iki kopyası varsa, git aslında yalnızca bir kez saklar.

Aynı kavramın işletim sistemi düzeyinde bir tür dosya sistemi olarak uygulanıp uygulanmadığını merak ediyorum.

Bir dosya sistemi varsayılan olarak bu şekilde hareket ederse, dll cehennem sorunları ile güzel yardımcı olacaktır . Esasen, sizin adınıza otomatik olarak bağlanacak. Herhangi bir uygulama (bir kavanoz gibi) tüm bağımlılıkları olan ve fazladan depolama maliyeti olmayan bir dizinde paketlenebilir.

Ruby meraklıları kütüphaneleri rubygems olarak yayınlayarak paylaşırlar. Yine de, bu mücevherleri paylaşma çabası, Satıcının Her Şeye yol açması gibi tüm kabiliyetlerin yerel klasörlere kopyalanması gibi dağıtıcı kabuslara neden oldu.


2
Ben bir uzman değilim, ama ZFS'ye bir göz atın .
ForeverWintr

Yanıtlar:



3

Network Appliance, Inc. yıllarca böyle depolama yeteneğine sahipti, aslında ZFS dosya sistemleri için Sun Microsystems'a şikayette bulundular ve Aaron Miller'ın kabul ettiği cevabında söylediklerini yapıyorlar. Buna değer olarak, şikayetler yaklaşık 3 yıl sonra Oracle ile çözüldü.

Bunu 2000'den beri kurumsal bir çözüm olarak kullandım ve iyi çalışıyor. İlk 'kopyadan' sonra depolama maliyeti bir kez gelir ve dosyada bir değişiklik olur. Aksi takdirde, birçok “kopya” ile ad alanı için yalnızca küçük bir artış olur.

Bunun "işletim sistemi seviyesi" ile ilgili bir soruyu yanıtladığını sanmıyorum, bunun yerine "dosya sistemi düzeyinde" olduğunu düşünüyorum.


0

Yeni Apple Dosya Sistemi (APFS, çünkü zaten başka bir şey olan bir AFS vardı) bu "otomatik bağlantı" / "tekilleştirme" büyüsünü yapıyor. macOS 10.13, iOS 11'de olduğu gibi bunu yerel olarak destekler (çoğu Mac'te).

Olduğu söyleniyor, "git gibi" yapmak için yeterli olduğunu sanmıyorum, çünkü "git gibi" olsaydı, o zaman aynı zamanda belirli bir zamanda verilen noktalarda dizin yapımın durumunun şifreli bir sağlama toplamı olurdu. Kimsenin bilgisayarımı kırmadığından ya da sistem dizinlerimi değiştirdiğinden emin olabilirdim. Aslında, Mac'lerimdeki Apache config dosyaları, LaunchDaemons, LaunchAgents ve diğerleri gibi bazı kritik sistem dizinlerini izlemek için git repo'ları kullanıyorum - bu şekilde yazılım yüklerken veya sunucumu bir süre çalıştırabilirim. berbat etti.

APFS, bir süre kullanılmadığında dosya sisteminden buluta bulutları boşaltmak için de çok güzel bir desteğe sahip, ancak yine de oradaymış gibi görünüyorlar ve istek üzerine buluttan geri doldurulacaklar.

Her zaman bir Hackintosh 'ta yapıp onunla dalga geçebilirsin. BSD eğlencelidir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.