سؤال

أحاول الحفاظ على بلدي ملفات ثابتة في فرع منفصل حتى أتمكن من منعهم من الاندماج في فرعي الرئيسي (في Heroku، يجب أن تظل سبيكة تطبيقك صغيرة).لا أريد تجاهل ملفاتي الثابتة، لأنني أريد الاحتفاظ بها داخل فرع "devel" الخاص بي.

من الناحية المثالية، أرغب في إبقاء test.db فارغًا والمجلد العام بأكمله فارغًا في الفرع الرئيسي.

لذا، هل يمكنني إنشاء "تراكب" على فرع؟هل يمكنني منع دمج ملفات/أدلة معينة في فرعي الرئيسي؟

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

المحلول

يمكنك تحديد نفس الملفات الثابتة على فرعك الرئيسي ولكن:

وبما أن .gitattribute لن يتم تعريفه في الفروع الأخرى، فإن دمج هذه الملفات سيستمر بشكل طبيعي.


تتمثل الفكرة في تحديد ملف .gitattributes في دليل تلك الملفات الثابتة الموجودة على الفرع الرئيسي بالمحتوى التالي:

myStaticFile1 merge=keepMine
myStaticFile2 merge=keepMine
myStaticFile3 merge=keepMine

ستحتفظ هذه الملفات الثلاثة دائمًا بمحتواها المحلي (الذي يكون فارغًا في الملف الرئيسي) عند الدمج في الملف الرئيسي.

سيتعين عليك تحديد برنامج تشغيل الدمج (يسمى هنا "keepmine").راجع السؤال المرتبط لهذا البرنامج النصي.

نصائح أخرى

أضف الملفات إلى .gitignore في الملف الرئيسي.عند الخروج من التطوير، سيتغير .gitignore ولن يتجاهله بعد الآن.(لاحظ أنه إذا قمت بتشغيل git clean -x, ، سيتم الكتابة فوق الملفات.)

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