زئبقي
ميركوريال هي أداة تحكم في الإصدارات موزعة لمطوري البرامج . وهي مدعومة على أنظمة مايكروسوفت ويندوز ولينكس وأنظمة أخرى شبيهة بنظام يونكس ، مثل فري بي إس دي وماك أو إس .
تشمل أهداف تصميم Mercurial الرئيسية الأداء العالي وقابلية التوسع، واللامركزية، والتطوير التعاوني الموزع بالكامل، والتعامل الفعال مع كل من الملفات النصية والثنائية ، وقدرات متقدمة للتفرع والدمج، مع الحفاظ على بساطة التصميم. [ 5 ] يتضمن واجهة ويب متكاملة. كما اتخذ Mercurial خطوات لتسهيل الانتقال لمستخدمي أنظمة التحكم في الإصدارات الأخرى، وخاصة Subversion . يُعد Mercurial برنامجًا يعمل بشكل أساسي عبر سطر الأوامر ، ولكن تتوفر ملحقات واجهة المستخدم الرسومية ، مثل TortoiseHg ، كما تدعم العديد من بيئات التطوير المتكاملة (IDEs) التحكم في الإصدارات باستخدام Mercurial. يتم استدعاء جميع عمليات Mercurial كوسائط لبرنامج التشغيل الخاص به (في إشارة إلى Hg - الرمز الكيميائي لعنصر الزئبق ).hg
ابتكرت أوليفيا ماكال [ أ ] برنامج ميركوريال وشغلت منصب مطورته الرئيسية حتى أواخر عام 2016. يُصدر ميركوريال كبرنامج مجاني بموجب ترخيص GPL-2.0 أو أحدث . [ 7 ] وهو مُنفذ بشكل أساسي باستخدام لغة البرمجة بايثون ، ولكنه يتضمن أيضًا تطبيقًا لمقارنة الملفات الثنائية مكتوبًا بلغة C.
تاريخ
أعلن ماكال لأول مرة عن ميركوريال في 19 أبريل 2005. [ 2 ] وكان الدافع وراء ذلك هو إعلان Bitmover في وقت سابق من ذلك الشهر عن سحب النسخة المجانية من BitKeeper بسبب تطوير SourcePuller .
استُخدم برنامج BitKeeper لتلبية متطلبات التحكم في إصدارات مشروع نواة لينكس . قرر ماكال كتابة نظام تحكم في الإصدارات موزع كبديل لاستخدامه مع نواة لينكس. بدأ هذا المشروع بعد أيام قليلة من إطلاق لينوس تورفالدز لمشروع Git الشهير الآن، والذي يحمل أهدافًا مماثلة. [ 8 ]
قرر مشروع نواة لينكس استخدام Git بدلاً من Mercurial، ولكن Mercurial يستخدم الآن من قبل العديد من المشاريع الأخرى (انظر أدناه ).
في رد على قائمة بريد ميركوريال، أوضحت أوليفيا ماكال كيف تم اختيار اسم "ميركوريال":
قبل الإصدار الأول بفترة وجيزة، قرأتُ مقالًا عن مشكلة Bitkeeper المستمرة، وصف لاري مكفوي بأنه متقلب المزاج (بمعنى "غير مستقر"). ونظرًا لتعدد معاني الكلمة، وسهولة اختصارها، وتوافقها مع نظام التسمية الذي أستخدمه (انظر بريدي الإلكتروني)، فقد فهمتُها فورًا. وهكذا سُمّيَت Mercurial تكريمًا للاري. لا أعرف إن كان الأمر نفسه ينطبق على Git. [ 9 ] [ 10 ]
استخدمت مشاريع بارزة مثل OpenJDK برنامج Mercurial في الماضي، على الرغم من أن OpenJDK لم يعد يستخدمه اعتبارًا من Java 16. [ 11 ]
تصميم
يستخدم ميركوريال خوارزمية SHA-1 لتحديد المراجعات. وللوصول إلى المستودع عبر الشبكة، يستخدم ميركوريال بروتوكول HTTP بهدف تقليل عدد الطلبات ذهابًا وإيابًا، والاتصالات الجديدة، والبيانات المنقولة. كما يمكن لمركوريال العمل عبر SSH، حيث يكون البروتوكول مشابهًا جدًا لبروتوكول HTTP. ويستخدم افتراضيًا عملية دمج ثلاثية قبل استدعاء أدوات الدمج الخارجية.
الاستخدام
يوضح الشكل 1 بعضًا من أهم العمليات في برنامج Mercurial وعلاقاتها بمفاهيم Mercurial.

التبني
على الرغم من عدم اختيار ميركوريال لإدارة مصادر نواة لينكس، فقد اعتمدته عدة منظمات. تستخدم فيسبوك لغة البرمجة رست لكتابة مونونوكي، [ 12 ] [ 13 ] وهو خادم ميركوريال مصمم خصيصًا لدعم مستودعات المشاريع المتعددة الكبيرة.
في عام 2013، اعتمدت فيسبوك نظام ميركوريال وبدأت العمل على توسيعه للتعامل مع مستودع التعليمات البرمجية الموحد الكبير الخاص بها. [ 14 ]
تستخدم جوجل أيضًا عميل Mercurial كواجهة أمامية على نظامها الخلفي أحادي المستودع القائم على السحابة "Piper". [ 15 ]
أعلنت Bitbucket أن خدمات التحكم في الإصدارات المستندة إلى الويب ستنهي دعم Mercurial في يونيو 2020 (ثم تم تمديدها إلى يوليو 2020)، [ 16 ] موضحة أن "أقل من 1% من المشاريع الجديدة تستخدمه، وأشارت استطلاعات رأي المطورين إلى أن 90% من المطورين يستخدمون Git". [ 17 ]
استخدم Xen برنامج Mercurial لسنوات عديدة، لكنه انتقل إلى Git في عام 2013. [ 18 ]
استخدمت موزيلا ميركوريال لسنوات عديدة، لكنها بدأت في إنهاء دعم ميركوريال لصالح جيت في عام 2023. [ 19 ]
إدارة خوادم ميركوريال والمستودعات
- هيبتابود ، نسخة معدلة من جيت لاب لـ ميركوريال من تطوير أوكتوبوس
- كاليثيا ، نسخة معدلة من رودكود بموجب رخصة GPLv3
- فابريكاتور بواسطة فاسيليتي
- رود كود من شركة رود كود المحدودة.
استضافة شفرة المصدر
توفر المواقع الإلكترونية التالية خدمة استضافة مجانية لشفرة المصدر لمستودعات Mercurial:
- Bitbucket by Atlassian (تم إيقافه اعتبارًا من يوليو 2020) [ 17 ]
- قاعدة البيانات [ 20 ]
- جنو سافانا من مؤسسة البرمجيات الحرة
- سباعي الأرجل
- OSDN [ 21 ] (يبدو أنه معطل اعتبارًا من ديسمبر 2024)
- بيرفورس [ 22 ]
- بوشتشا [ 23 ] (موقع شقيق لموقع GNU Savannah، مستضاف في أوكرانيا)
- سورس فورج
- مصدر
- عائلة توكس [ 24 ]
يذكر موقع ميركوريال الإلكتروني بعض مصانع الحدادة الأخرى .
مشاريع مفتوحة المصدر تستخدم ميركوريال
بعض المشاريع التي تستخدم نظام التحكم عن بعد الموزع Mercurial: [ 25 ]
مشاريع مفتوحة المصدر كانت تستخدم سابقًا Mercurial
انظر أيضاً
ملحوظات
مراجع
- ↑ "mpm - Mercurial" . Mercurial . تم الاسترجاع في 24 فبراير 2023 .
- 1 2 ماكال، أوليفيا (20 أبريل 2005). "Mercurial v0.1 - نظام إدارة برمجيات موزّع قابل للتوسع وبسيط" . نواة لينكس (قائمة بريدية).
- ↑ "Mercurial 7.2.3 (2026-06-29)" .
- ↑ "ملف README في المجلد الفرعي rust، الفرع المستقر" . 17 سبتمبر 2025. تم الاطلاع عليه في 27 سبتمبر 2025 .
- ↑ ماكال، أوليفيا. "نحو إدارة سلسلة توريد أفضل: ريفلوج وميركوريال" (ملف PDF) . ميركوريال . مؤرشف (ملف PDF) من الأصل بتاريخ 26 مايو 2019. تم الاطلاع عليه بتاريخ 26 مايو 2019 .
- ↑ "مات ماكال أصبح الآن أوليفيا ماكال" . ميركوريال . تم الاطلاع عليه بتاريخ 28 مايو 2021 .
- ↑ "إعادة الترخيص" ، ميركوريال (ويكي)، Mercurial-scm.org.
- ↑ ماكال، أوليفيا (29 أبريل 2005). "رد: مقارنة بين Mercurial 0.4b و git patchbomb" . نواة لينكس (قائمة بريدية).
{{cite mailing list}}: CS1 maint: deprecated archiveal service ( link ) - ↑ ماكال، أوليفيا (15 فبراير 2012). "لماذا اختار مات اسم ميركوريال؟" . ميركوريال (قائمة بريدية) . تم الاطلاع عليه في 7 يونيو 2016 .
- ↑ قال تورفالدز: "أنا شخص أناني، لذلك أسمي جميع مشاريعي باسمي. أولاً لينكس، والآن جيت."
- 1 2 "JEP 357: الانتقال من Mercurial إلى Git" . 12 أبريل 2025.
- ↑ "خادم تحكم في المصدر Mercurial، مصمم خصيصًا لدعم المستودعات الضخمة: facebookexperimental/mononoke" . 31 يناير 2019 - عبر GitHub.
- ↑ زورك، غريغوري (17 أكتوبر 2016). "ملاحظات حول إصدار Mercurial 4.0" . mozilla.dev.version-control. مجموعات جوجل . تم الاطلاع عليه بتاريخ 22 نوفمبر 2021 .
- ↑ غود، دورهام؛ أغاروال، سيدهارث (7 يناير 2014). "توسيع نطاق ميركوريال في فيسبوك" . كود فيسبوك . تم الاسترجاع في 13 أكتوبر 2015 - عبر فيسبوك.
- ↑ "لماذا تخزن جوجل مليارات الأسطر من التعليمات البرمجية في مستودع واحد" . يوليو 2016.
- ↑ "إيقاف دعم Mercurial في Bitbucket" . 21 أبريل 2020. مؤرشف من الأصل في 1 يوليو 2020.
- 1 2 تشان، دينيس (20 أغسطس 2019). "إيقاف دعم Mercurial في Bitbucket" . Bitbucket . تم الاسترجاع في 29 أغسطس 2019 .
- 1 2 "أصبح Xen الآن رسميًا في git" . 25 فبراير 2013.
- 1 2 "موزيلا ستنقل تطوير فايرفوكس من ميركوريال إلى جيت هاب التابع لمايكروسوفت • DEVCLASS" . 7 نوفمبر 2023.
- ↑ "استضافة Git و Mercurial و Subversion" . الميزات . Codebase HQ. 4 مارس 2013. مؤرشف من الأصل في 30 مارس 2014. تم الاسترجاع في 4 مارس 2013 .
- ↑ "لنبدأ تطوير البرمجيات مفتوحة المصدر باستخدام Mercurial (Hg) – OSDN" . osdn.net .
- ↑ "جرب Helix TeamHub مجانًا | Perforce" . info.perforce.com .
- ^ "مرحبًا [ بوسزكزا ] " . ps.gnu.org.ua .
- ↑ "TuxFamily: استضافة مجانية للأشخاص الأحرار" . tuxfamily.org .
- ↑ "بعض المشاريع التي تستخدم ميركوريال" ، ميركوريال (ويكي)، Mercurial-scm.org.
- ↑ ريد، جيه بول (12 أبريل 2007). "مقارنة أنظمة التحكم في الإصدارات: إعادة النظر في إعادة النظر" .
روابط خارجية
- برنامج 2005
- برامج مجانية متعددة المنصات
- أنظمة التحكم في الإصدارات الموزعة
- برنامج مجاني مكتوب بلغة C
- برنامج مجاني مكتوب بلغة بايثون
- برنامج مجاني للتحكم في الإصدارات
- أنظمة التحكم في الإصدارات
- برنامج يستخدم رخصة جنو العمومية العامة
