سؤال

إنه سؤال مبتدئ نوعًا ما، لكني أواجه مشكلات في استخدام SNVKit.

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

الأمر الذي أحاول تشغيله هو "commit -m "Test Add" /svnroot/project1/" ولكنني أستمر في الحصول على "svn:'/home/user' ليس نسخة عمل"

لدي هيكل مشابه لهذا:

  • /svnroot/
  • /svnroot/project1/
  • /svnroot/project1/grouping1/
  • /svnroot/project1/grouping1/myfilesarehere

إذا حاولت تثبيت الملف تظهر لي الرسالة التالية:""/svnroot/project1/grouping1' ليس تحت التحكم في الإصدار وليس جزءًا من الالتزام، ومع ذلك فإن فرعه جزء من الالتزام."

ما الخطأ الذي قد أفعله؟

يحرر:إصلاح الدلائل.

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

المحلول 7

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

نصائح أخرى

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

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

انقل "تعليقك" -m إلى النهاية.أود فقط تغيير الدليل إلى دليل مشروعك.ثم تقوم فقط بكتابة svn التزام -m "تعليق" وسيقوم svn بالباقي.

أعتقد أن المشكلة تكمن في أنك تقوم بإجراء تغييرات على مستودع SVN الفعلي نفسه بدلاً من إجراء الاستيراد، وفحص نسخة بنفسك، وإجراء التغييرات، ثم القيام بالالتزام من نسخة العمل المسحوبة بعد إضافة أي أدلة فرعية.لذا: import, checkout, احدث تغيير, ، ثم أخيرًا قم بإجراء add لكل ملف أو دليل جديد و commit -m "message" تشكيل المستوى الأعلى.

مزيد من المعلومات في كتاب SVN "السلحفاة" مجاني على الإنترنت.

ليس الأمر واضحًا تمامًا لأنك قمت باستبدالها بشكل غير متسق، ولكن يبدو أنك تخلط بين مسارات المستودع/عناوين URL ومسارات النسخ العاملة.إذا كنت تقوم بإضافة ملفات أو إرسالها، فاستخدم دائمًا مسارات النسخ العاملة.حاول اللعب باستخدام سطر الأوامر svn قبل محاولة استخدام SVNKit.

إذا كنت تريد إنشاء دليل جديد بالكامل، فكر في استخدامه استيراد svn بدلاً من.كما هو الحال الآن، قد تضطر إلى الرجوع أو القيام ببعض الإجراءات الأخرى لتنظيف الفوضى الحالية.

في بعض الأحيان، يؤدي استخدام بعض البرامج مثل Eclipse أو Versions.app إلى ظهور هذه الأخطاء.في هذه الحالة، قم بإنهاء عميل SVN وقم بذلك عبر سطر الأوامر.

ربما تكون قد قمت ببعض عمليات إعادة البناء وتحاول الالتزام بـ "some.package.YourClass.java"، وفي هذه الحالة حاول الالتزام بالدليل (الحزمة) "some".

إذا كنت تريد إنقاذ نفسك من هذا الصداع في المستقبل، ففكر في التبديل إلى GIT بدلاً من svn.تذكر أن svn يحتفظ بالتغييرات في ملف .svn ويحاول نقلها إلى المستودع.عندما تقوم بذلك، وفقًا لملف .svn هذا، قم بدفع "تغييراتك".ولكن ماذا لو كانت تغييراتك معقدة للغاية؟svn لا يستطيع التعامل معها.

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

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