كيفية القيام بمزامنة سريعة وآمنة على perforce؟

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

  •  20-09-2019
  •  | 
  •  

سؤال

إذا كنت تفعل sync في Perforce، يمكن أن يحدث ذلك، في كثير من الأحيان، لا تفعل شيئا حتى لو كان ينبغي. إذا كنت تقوم بمزامنة القسري (sync -f) سيقوم بالتأكيد بمزامنة جميع الملفات من الخادم عمياء وهذا غير مقبول إذا كان لديك مشروع كبير.

السؤال هو كيف يمكنك القيام بمزامنة سريعة؟

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

المحلول

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

يجب أن تدع Perforce إدارة القرص الثابت الخاص بك لك - يعرف الخادم إصدارات الملفات التي لديك، وبالتالي فإن المزامنة العادية تحصل على ما تحتاجه. إذا فشل ذلك، فإن ذلك تقريبا دون استثناء علامة على أن المستخدم هو تعديل والحذف والإضافة وإعادة تسمية الملفات خارج Perforce (على سبيل المثال في Explorer).

في بعض الأحيان قد تحصل على نظام مضحك (IE خطأ الكمبيوتر،) يؤدي ذلك، لذلك ليس بالضرورة خطأ المستخدمين. ولكن هذه نادرة جدا - وبالتالي مؤهلتي "المعتاد" أعلاه.

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

امل ان يساعد.

نصائح أخرى

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

إذا كنت ترغب في إجبار المزامنة فقط على تلك الملفات التي تغيرت من المستودع:

p4 diff -se ... | p4 -x - sync -f
p4 diff -sd ... | p4 -x - sync -f

تحذير: سيؤدي ذلك إلى الكتابة فوق أي ملفات غير محلية (في الدليل والدليل الحالي).

إذا قمت بتحرير بعض الملفات وبدلا من ذلك، فقد نسيت فتحها للتحرير أولا، يمكنك القيام بذلك:

p4 diff -se ... | p4 -x - edit

التي ستفتح لتحرير أي ملف يختلف عن المستودع.

وهذا:

p4 diff -sd ... | p4 -x - delete

سيتم فتح لحذف أي ملف تم حذفه محليا.

إذا قمت بإنشاء عدم تناسق، حيث تخفي Perforce Track لما يجري في مساحة العمل الخاصة بك، يجب عليك استخدام وظيفة وظيفة "التوفيق دون اتصال بالإنترنت ..." (في P4V).

سيقوم ذلك بتشغيل Folder Diff وأخبرك بالخيارات التي يجب عليك حل التناقضات.

بشكل عام، تأكد من أنك تحقق دائما من الملفات بشكل صريح من خلال Perforce (مفتوح للتحرير). هذا يشعر غريبا إذا كنت معتادا على أنظمة أخرى.

أعتقد أن الأمر الذي تبحث عنه هو P4 نظيفة.

من عند: http://www.perforce.com/perforce/r14.2/manuals/cmdref/p4_clean.html.

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

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