bup-midx - manual referensi, opsi, contoh perintah


NAMA

bup-midx - buat file multi-indeks (.midx) dari beberapa file .idx

RINGKASAN

bup midx [-o outfile] <-a|-f|idxnames...>

KETERANGAN

bup midx membuat file multi-indeks (.midx) dari satu atau lebih file git pack index (.idx).

Catatan: Anda tidak perlu lagi menjalankan perintah ini dengan tangan. Itu dijalankan secara otomatis oleh bup-save(1) dan perintah serupa.

PILIHAN

-o, --output=filename.midx

gunakan nama file keluaran yang diberikan untuk file .midx. Default dibuat secara otomatis.

-a, --auto

secara otomatis menghasilkan file .midx baru untuk file .idx mana pun yang sesuai.

-f, --force

paksa pembuatan satu file .midx baru yang berisi semua file .idx Anda, bahkan jika file .midx lainnya sudah ada. Ini akan menghasilkan kinerja pencadangan tercepat, tetapi mungkin perlu waktu lama untuk dijalankan.

--dir=packdir

tentukan direktori yang berisi file .idx/.midx untuk digunakan. Standarnya adalah $BUP_DIR/objek/paket.

--max-files

jumlah maksimum file .idx untuk dibuka sekaligus. Anda dapat menggunakan ini jika Anda memiliki sejumlah kecil deskriptor file yang tersedia, sehingga midx dapat menyelesaikan (walaupun mungkin tidak optimal) meskipun tidak dapat membuka semua file .idx Anda sekaligus. Nilai default dari opsi ini seharusnya baik untuk kebanyakan orang.

--check

memvalidasi file .midx dengan memastikan bahwa semua objek dalam file .idx yang ada di dalamnya ada di dalam .midx. Mungkin berguna untuk debugging.

CONTOH

$ bup midx -a
Merging 21 indexes (2278559 objects).
Table size: 524288 (17 bits)
Reading indexes: 100.00% (2278559/2278559), done.
midx-b66d7c9afc4396187218f2936a87b865cf342672.midx

DISKUSI

Secara default, bup menggunakan file paket berformat git, yang terdiri dari file paket (berisi objek) dan file idx (berisi daftar nama objek yang diurutkan dan offsetnya dalam file .pack).

File idx normal nyaman karena itu berarti Anda dapat menggunakan git(1) untuk mengakses dataset cadangan Anda. Namun, file idx bisa menjadi lambat ketika Anda memiliki banyak paket yang sangat besar (yang biasanya tidak dimiliki git, tetapi bup sering melakukannya).

file bup .midx terdiri dari satu daftar terurut dari semua objek yang terdapat dalam semua file .pack yang dirujuknya. Daftar ini dapat dicari secara biner dalam sekitar langkah-langkah log2(m), di mana m adalah jumlah total objek.

Untuk lebih mempercepat pencarian, file midx juga memiliki tabel fanout berukuran variabel yang mengurangi n langkah pertama pencarian biner. Dengan bantuan tabel fanout ini, bup dapat mempersempit halaman mana dari file midx tempat id objek tertentu berada (jika ada) dengan satu pencarian. Dengan demikian, pencarian tipikal hanya perlu menukar dua halaman: satu untuk tabel fanout, dan satu lagi untuk id objek.

file midx paling berguna saat membuat cadangan baru, karena mencari objek yang tidak ada di repositori perlu mencari melalui semua file indeks untuk memastikan bahwa itu tidak ada. (Mencari objek yang memang ada dapat dioptimalkan; misalnya, objek berurutan sering disimpan dalam paket yang sama, jadi kita dapat mencarinya terlebih dahulu menggunakan algoritme MRU.)

LIHAT JUGA

bup-save(1), bup-margin(1), bup-memtest(1)

BUP

Bagian dari paket bup(1).

PENULIS

Avery Pennarun .