التخريب: هل يمكنني ارتكاب العديد من مجلدات المغادرة مرة واحدة؟

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

  •  12-09-2019
  •  | 
  •  

سؤال

دعنا نقول أن لدي نسخ عمل من عدة مجلدات مختلفة من مستودع SVN المنتشرة عبر نظام الملفات الخاص بي. الدلائل الأم هي ليست جزءا من المستودع. على سبيل المثال

somedir1\
   workingcopyOfA\
   workingcopyOfB\
somedir2\
   somedir3\
       workingcopyOfC\
   workingcopyOfD\

الآن تحتوي جميعهم على تغييرات أود تسجيل الوصول إليها في وقت واحد (استدعاء svn مرة واحدة فقط للراحة، باستخدام رقم مراجعة جديد واحد فقط للبساطة).

هل هذا ممكن؟ هل هذا ما يهدفه إلى أن يغلق؟ ماذا يمكنني أن أفعل إذا كنت تستخدم svn <v1.5؟

(هناك بعض الأسئلة المتشابهة هنا، لكنها تشير إلى مشاكل مختلفة.)

تحرير: لتوضيح: نسخ العمل جميعها تنتمي إلى نفس المستودع، ولكن إلى أجزاء مختلفة، أي أن المستودع يبدو وكأنه هذا:

RepoDirA\
RepoDirB\
RepoDirC\
RepoDirD\
هل كانت مفيدة؟

المحلول

كما لاحظ البعض الآخر، فليس من الممكن أن تكون لأسباب جيدة (انظر إجابة D Garcia خاصة).

إذا كان Eclipse يدعم شيئا من هذا القبيل، أظن أنه يخلق إشارات متعددة خلف ظهرك.

ومع ذلك، فمن الممكن أيضا بفتح التغييرات في دليل عمل واحد وتطبيق هذه التغييرات على دليل العمل الآخر (إذا تداخل). بمجرد القيام بذلك، تكون جميع التغييرات في دليل العمل الفردي حيث يمكنك تسجيل الدخول من. مشكلات الدمج DRCIA مدببة الآن مسؤوليتك في حل وقت التصحيح.

إذا دلائل العمل الخاصة بك لا التداخل، والسبب الوحيد لديك أدلة عمل متعددة هو أنه على سبيل المثال، لم ترغب في سحب المستودع بأكمله، أقترح التحقق من التسلسل الهرمي إلى الجذر المشترك لدليل العمل الخاص بك، ولكن غير متكرر (باستخدام svn co -N root) ثم احصل على أدلة عمل محددة مع svn update path/to/subsetOfInterest للحصول على الدلائل المتوسطة). بهذه الطريقة، يعيشون جميعا داخل نفس دليل العمل، والسماح للعمل عليها بحريا.

نصائح أخرى

أعلم أن الكسوف يمكن أن يفعله هذا ولكن ربما يستخدمون بعض الحيل في الداخل (لأنه يمكنك ارتكاب مشاريع تستخدم مستودعات مختلفة، أيضا، على سبيل المثال، على سبيل المثال في CVS والآخر في SVN).

أقترح أن أحاول فقط مع عميلك. إذا لم ينجح الأمر، فسيتم طباعة خطأ. لا يمكنك كسر أي شيء.

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

بالطبع، إذا كانت جميع نسخ عملك تشير إلى نفس مسار المستودع - سيكون ذلك أمرا سيئا حقا للسماح به. كنت تتوقع أساسا التخريب من دمج 4 مجموعات من التغييرات محليا قبل وضعها في المستودع، والتي يمكن أن تجعل متعة عداد الصراعات :)

لاحظ أن هذا كان مع التخريب 1.4.5.

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

أعتقد أنه ليس من الممكن، وليس من قبل سطر الأوامر وليس مع السلاحف. ولكن يمكن أن تكون هناك أدوات تجعل هذا ممكنا. يمكنك كتابة برنامج نصي Bach- لهذا أيضا.

يعد أي تغيير في أي شيء آخر، هنا يمكنك تجميع بعض التغييرات في عمل واحد معا حتى تتمكن من ارتكابها بشكل منفصل.

أعتقد أنه يتم الاحتفاظ بمجموعات التغيير في مستودع على أساس المستودع - لذلك في المثال، يجب أن تكون جميع نسخ العمل الخاصة بك AB & C في نفس المستودع. ثم عليك إضافة كل من نسخ العمل بشكل فردي إلى نفس الإطلاق.

لا يمكنني اختباره (إلى إكمال) ولكن يبدو أن الإعداد يعمل.

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