سؤال

لقد واجهنا مشكلة في استخدام Subversion على نظام التشغيل Windows.ارتكب مطور ملف foo.Data.sql وبعد ذلك قام مطور آخر بتنفيذ ملف يسمى foo.data.sql.وبطبيعة الحال، تسبب هذا في حدوث مشكلة لدى عملاء Windows (جميع العملاء هم Windows في بيئاتنا) لأن الملفات حساسة لحالة الأحرف في Subversion ولكن ليس في Windows.

لقد تمكنا من حل هذه المشكلة عن طريق حذف أحد الملفات مباشرة في المستودع، ولكن لا يزال لدي سؤالان:

  1. كيف يمكن للمطور القيام بذلك باستخدام عميل Windows؟هل لديه نسخة عمل غير صالحة، أم أن هناك خطأ في العميل (TortoiseSVN)؟
  2. كيف يمكننا منع مثل هذه التغييرات من الدخول إلى المستودع (أي؟هل قام أي شخص بكتابة برنامج نصي للربط يقوم بإجراء فحص سلامة العقل بحثًا عن مشكلات غلاف الملف)؟
هل كانت مفيدة؟

المحلول

يوجد بالتأكيد برنامج نصي ربط يتحقق من حساسية حالة الأحرف - لدى Sourceforge هذا البرنامج كأحد خياراتهم.جوجل سريع يظهر: http://www.subversionary.org/howto/using-check-case-insensitive-py-on-windows و http://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/case-insensitive.py

ستنشأ المشكلة على نظام التشغيل Windows إذا أضاف المستخدم 1 foo.data.sql والمستخدم 2 أضاف foo.Data.sql قبل الحصول على تحديث من المستخدم 1.

امل ان يساعد :)

نصائح أخرى

في نظام التشغيل Windows، تكون الملفات غير حساسة لحالة الأحرف، ولكنها تحافظ على حالة الأحرف.يمكنك إعادة تسمية ملف وتغيير الحالة وسيحتفظ Windows بالتغيير.تحدث المشكلة عندما يحاول Subversion إنشاء الملف الثاني.يُبلغ Windows أن الملف موجود بالفعل.

إذا أردت دمج الملفين في نسخة واحدة، فبدلاً من حذف الملف الموجود في المستودع، يمكنك إعادة تسمية الملف التالف في المستودع (أي .قم بإلحاق لاحقة مثل '.temp')، وقم بتحديث العميل، وادمجه في الملف الجيد، ثم احذف الملف السيئ.

1؛من الممكن، لأن الملفين جاءا من مطورين اثنين.أحدهما هو إعادة تسمية الملف أو إنشائه بحالات مختلفة وأثناء الالتزام لا يدرك أنه سيكون إضافة وليس تغييرًا في الالتزام.

2؛يفحص الأسئلة الشائعة حول TortoiseSVN

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