كيف أقوم بتنفيذ برنامج نصي ربط ما قبل الالتزام في SVN الذي يستدعي dos2unix للتحقق من صحة الملف المسجل

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

  •  09-06-2019
  •  | 
  •  

سؤال

كنت أتساءل عما إذا كان أي شخص هنا لديه بعض الخبرة في كتابة هذا النوع من النصوص وإذا كان بإمكانه إعطائي بعض النصائح.

وأود تعديل هذا النصي للتحقق من أن ملف الإيداع لا يحتوي على حرف إرجاع بتنسيق EOL.تنسيق EOL هو CR LF في نظام التشغيل Windows وLF في Unix.عندما يقوم المستخدم بتسجيل الدخول باستخدام رمز بتنسيق Windows.لم يعد يتم تجميعه في Unix بعد الآن.أعلم أنه يمكن القيام بذلك من جانب العميل ولكنني بحاجة إلى إجراء هذا التحقق من الصحة من جانب الخادم.ولتحقيق ذلك يجب علي القيام بما يلي:

1) تأكد من أن الملف الذي أتحقق منه ليس ملفًا ثنائيًا، ولا أعرف كيفية القيام بذلك باستخدام svnlook، هل يجب علي التحقق من نوع mime:type للملف؟ال كتاب احمر لا يشير إلى هذا بوضوح أو لا بد أنني لم أره.

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

أود الحصول على تعليقاتكم/تعليقاتكم على هذا النهج.

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

المحلول

أعتقد أنه يمكنك تجنب البرنامج النصي لربط الالتزام في هذه الحالة باستخدام ملف svn:eol-style الخاصية كما هو موضح في SVNBook:

بهذه الطريقة يمكن لـ SVN أن تقلق بشأن نهايات الخطوط الخاصة بك.

حظ سعيد!

نصائح أخرى

ما الذي تحاول فعله بالضبط؟

بالطبع، هناك العديد من الأماكن للتعرف على خطافات الالتزام المسبق لـ svn (على سبيل المثال. هنا , هنا, ، وفي كتاب احمر) ولكن ذلك يعتمد على ما تحاول القيام به وما هو متاح على نظامك.

يمكنك أن تكون أكثر تحديدا؟

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