هل استخدام المستودع المركزي يتعارض مع غرض GIT؟

StackOverflow https://stackoverflow.com/questions/460502

  •  19-08-2019
  •  | 
  •  

سؤال

إذا كنت في شركة كبرى في ظل وجود العديد من الأشخاص الذين يعملون على تطبيق معين، هل يتعارض ذلك مع مبدأ أ التحكم في الإصدار الموزع نظام لديه مستودع مركزي رسمي؟

أحيانًا أجد صعوبة في فهم مفهوم نظام التحكم في الإصدار الموزع مثل شخص سخيف في بيئة الشركات.إذا لم يكن لديك مستودع مركزي، ألن يكون من المفيد معرفة من لديه أحدث إصدار محدث للسحب منه، ومن لديه الميزة x أو إصلاح الأخطاء y التي يجب على الجميع الحصول عليها، وما إلى ذلك، وما إلى ذلك.

هل هو هزيمة الغرض من شخص سخيف لاستخدامها بطريقة مماثلة ل SVN, ، مع مستودع مركزي يدفع/ينسحب منه الجميع؟في كل مرة أفكر في القيام بذلك أشعر وكأنني أفتقد المغزى من كل شيء.

هل يمكن لأحد أن ينيرني؟

هل كانت مفيدة؟

المحلول

ليس حقيقيًا.يتيح DCVS المزيد من الحرية في كيفية التفاعل بين المطورين دون إشراك المستودع المركزي.المستودع الرسمي هو رسمي فقط بالإجماع.يحتوي Linux أيضًا على مستودع مركزي، وهو المستودع الذي يتم من خلاله إنشاء إصدارات kernel "الرسمية"، ولكن لا يوجد فرق مادي بين المستودع المركزي "الرسمي" ومستودعات العميل كما هو الحال في VCS المركزية.

نصائح أخرى

ربما تفكر على غرار هذا الرسم البياني:

alt text

من المحتمل أن يبدو هذا وكأنه فوضى قادمة من CVCS."نحن بحاجة إلى بعض النظام"، أسمعك تقول؟

إذا لم يكن لديك مستودع مركزي، ألن يكون من المفيد معرفة من لديه أحدث إصدار محدث للسحب منه، ومن لديه الميزة x أو إصلاح الأخطاء y التي يجب على الجميع الحصول عليها، وما إلى ذلك، وما إلى ذلك.

نعم.على عكس CVCS، لا يوجد "أحدث إصدار" حقًا.إذا لم يكن هناك موقع مركزي، فلن تعرف على الفور ما إذا كنت تريد رؤية Sue أو Joe أو Eve للحصول على أحدث إصدار.يساعد الموقع المركزي في توضيح ماهية الإصدار الأخير "المستقر".

شيء أكثر قليلا من هذا القبيل:

alt text

قد يكون من الجدير بالذكر أيضًا أنه قد يكون هناك أكثر من مستودع مركزي واحد اعتمادًا على اختصاصات مجموعات الأشخاص داخل المنظمة.

تخيل مدير مشروع يدير فرق تطوير متعددة، قد يكون لكل فريق مستودع "مركزي" يدفعون إليه.كل أسبوع، قد يقوم مدير المشروع بسحب التغييرات من كل فريق إلى مستودعه "المركزي"، ودمجها وإعادتها إلى المستودعات "المركزية" الخاصة بفرقه.

ربما لا يكون هذا مثالًا رائعًا (ما زلت أفكر في كل هذا أيضًا)، ولكن هذا مجرد مدير مشروع واحد.قم بإضافة عدد قليل من المشاريع/المديرين وفريق ضمان الجودة، ثم قد ترى من أين أتيت..

--

ومع التحكم بالمصادر توزيع، يتم تأسيس مستودع "الرسمية" المركزي بسياسة - وليس مصدر العمارة أداة التحكم

وبالتأكيد ليست هزيمة الغرض من بوابة.

وميزة استخدام بوابة أو أي DVCS أخرى حتى عندما يكون هناك المركزي، المسؤول مستودع هو <م> لا تزال التي لا مركزية التحكم بالمصادر. وهذا هو، يمكنك أن تأخذ نسخة من المستودع، والعمل على التعليمات البرمجية الخاصة بك، ويقترفون محلية كل بضع دقائق إذا كنت بحاجة. كنت لا داعي للقلق أن يرتكب متاحة كود نصف النهائي الذي كسر بناء، كل شيء المحلية. (وسريع جدا).

وعندما تتم جميع الأعمال، يمكنك تنظيف التاريخ ودفع التغييرات بالكامل إلى مستودع مركزي في متجانسة، نظيفة، وحالة.

وأنا لا أعتقد أنك يمكن أن نقلل من الاستفادة من فصل فكرة "الخاص" يرتكب و "العام" يدفع. انها تسمح التغييرات لتعقبها حتى لو كنت الوحيد للاستفادة من هذه التفاصيل الصغيرة.

إذا تحقق هذا عرض جيت و (الشريحة 475 وبعد)، ويدعم مستودع نموذج الوسطى تماما من بوابة.

يمكنك يمكن إجبار أي شخص يرغب في git push تطويره لجعل أول git fetch + git merge أولا، ثم دفع.

وهذا لا هزيمة الغرض من بوابة على الإطلاق، وضمان حصول الجميع هو "متزامنة" مع بعضها البعض.

مستودع "الرسمية" للينوس مينتيونيد التي كتبها JesperE هو أن تدار من قبل سير عمل مختلف، وهي يتم منح نموذج "الدكتاتور ومساعديه"، حيث يتم منح حق الوصول للكتابة (دفع) فقط لينوس، وقراءة لأحد.

والآن: "هل هذا هزيمة وجهة DVC"

والمستودعات لا، كنت لا تزال توزع، واحد لكل المطورين، وأنها يمكن أن تجلب / دمج بين المستودعات الخاصة بها، وفقا لسير العمل بها الفريق الداخلي.
ومع ذلك، إذا كانوا يريدون المساهمة في إعادة الشراء المركزي، فإنها تحتاج إلى أن يكون أول ما يصل إلى موعد مع أحدث تاريخ هذا المخزون.

واحدة من الفوائد الرئيسية لDVCS هو أنه يمكنك الحصول على أحدث نسخة من مستودع 'الرسمية' ثم تكون المغامرة معها. يمكنك ارتكاب التغييرات محليا ودحر في الإرادة. هذا يعني أيضا أنك يمكن أن تعمل حتى حتى من دون الوصول إلى repositoy المركزية والتي لا تزال فوائد تحكم التعليمات البرمجية المصدر.

وأعتقد مع قليل من الانضباط نموذج يعمل بشكل جيد جدا. هذه المقالة يفسر أيضا مختلف النماذج التي يمكن أن تبني

وDVCS مثل بوابة لا يجبرك على استخدام مستودع مركزي. وبطبيعة الحال فإنه من الممكن أن يعلن مستودع واحد ليكون "المركزي" أو "الرسمية" أو أيا كان، وفي سياق شركة مستودع مركزي يجعل بعض الشعور، إن لم يكن للتنمية فعلى الأقل لأغراض النسخ الاحتياطي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top