Mercurial — Mett Makkol tomonidan 2005-yilda taqdim etilgan, taqsimlangan versiya nazorati tizimi. Qiziqarli tarixiy tafsilot shundaki, Mercurial Git bilan deyarli bir xil davrda, bir xil sabab tufayli — Linux yadrosi loyihasi ilgari foydalangan proprietar BitKeeper tizimining litsenziyasi bekor qilingandan keyin — yaratilgan.
Git bilan bir vaqtda yaratilishi
2005-yil aprel oyida BitKeeper kompaniyasi Linux hamjamiyati bilan litsenziya kelishuvini bekor qildi, bu esa Linux yadrosi loyihasiga zudlik bilan yangi versiya nazorati tizimi zarurligini keltirib chiqardi. Linus Torvalds Git‘ni yaratayotgan bir vaqtda, Mett Makkol mustaqil ravishda Mercurial’ni ishlab chiqa boshladi — ikkala loyiha ham bir xil muammoga turlicha yechim taklif qilgan.
Taqsimlangan versiya nazorati tizimi sifatida
Git kabi, Mercurial ham taqsimlangan arxitekturaga ega — har bir dasturchi butun loyiha tarixining to’liq nusxasini o’z kompyuterida saqlaydi, bu esa markaziy serverga doimiy ulanishni talab qilmasdan ishlash imkonini beradi. Bu xususiyat SVN kabi markazlashgan tizimlardan asosiy farqi hisoblanadi.
Sodda buyruqlar falsafasi
Mercurial’ning dizayn falsafasi Git‘ga qaraganda soddaroq va izchilroq buyruqlar to’plamini taqdim etishga qaratilgan bo’lib, ko’plab foydalanuvchilar uni Git‘ga nisbatan o’rganish osonroq deb hisoblaydi. Biroq bu soddalik ba’zida Git‘ning ba’zi ilg’or, moslashuvchan imkoniyatlarining yo’qligi hisobiga keladi.
Facebook va Mozilla’dagi tarixiy qo’llanilishi
Facebook va Mozilla kabi yirik kompaniyalar bir vaqtlar o’zlarining ulkan kod bazalari uchun Mercurial’ni tanlagan, hattoki Facebook o’zining ulkan monorepo tizimi uchun Mercurial’ning samaradorligini maxsus yaxshilashga sarmoya kiritgan edi. Keyinchalik ko’plab bunday tashkilotlar Git‘ga o’tishni afzal ko’rdi.
Git’ning ustunlik qilishi sabablari
GitHub‘ning ulkan mashhurligi, keng hamjamiyat va o’quv materiallari mavjudligi Git‘ni sanoat standartiga aylantirdi, Mercurial esa nisha (niche) vosita bo’lib qoldi. Shunga qaramay, Mercurial hamon ba’zi tashkilotlarda, ayniqsa uning soddaligini qadrlaydigan jamoalarda faol qo’llaniladi.
Bog’liq tushunchalar
Git, Taqsimlangan versiya nazorati, BitKeeper, Facebook, Mozilla, Repozitoriy, Linus Torvalds