هل من المنطقي استخدام التحكم في المصدر لإدارة ملفات الرسومات (على سبيل المثال ملفات PSDS و AI)

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

سؤال

بالطبع ، يمكن لأدوات التحكم في المصدر مثل GIT ، (Mercurial ، SVN ، إلخ ...) القيام بعمل رائع في إدارة التعليمات البرمجية المصدرية. لكنني أتساءل ، هل توفر هذه الأدوات للمطور أي ميزة عند استخدامها لتخزين نسخ من الملفات مثل Photoshop PSDs و Illustrator AI ملفات؟ هل من المنطقي استخدام هذه الأدوات مع هذا النوع من الملفات؟ هل سأخزن أقل في المستودع من مجموع أحجام الملفات لجميع هذه الملفات؟ على الرغم من أن تنسيق ملفات هذه الملفات لا يمكن قراءته إلا ، إلا أنني أتوقع ذلك في مثل هذه التطبيقات ، خاصة عند التعامل مع المتجه بدلاً من الرسومات النقطية ، فإن جزءًا صغيرًا من هذه الملف .

شكرا لك على رؤيتك.

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

المحلول 2

على الرغم من أن هذه قضية ذات رأي للغاية ، إلا أنني أقول لا - على الأقل بالنسبة للجيت.

  • لم يتم إنشاء GIT كحل تخزين.
  • لا توجد طريقة لدمج ملفات الصور.
  • لذلك ، لا معنى لها الفروع - إذا كانت الطريقة الوحيدة لدمج هذه الفروع معًا هي اختيار الإصدار الصحيح ، فأنت أفضل من استبدال الملف على الفور.
  • أدوات GIT GUI أدنى من وحدة التحكم ، وليست بسيطة. هل تريد تعليم فريق الفن الخاص بك ما هو الفرق بين الالتزام والدفع؟
  • عند الخروج من repo git ، يمكنك الخروج تاريخ كامل من بين جميع الملفات ، بدءا من الالتزام الأولي. إذا كنت تعمل على الملفات الثنائية لفترة كافية ، فسيصبح الحجم هائلاً.
  • العديد من مواقع استضافة GIT ، مثل Github ، لها حدود على أحجام الملفات الفردية.

أعتقد أنك أفضل حالًا مع Dropbox.

نصائح أخرى

يمكن لـ GIT نفسها إدارة أي نوع من البيانات ، بشرط ألا تكون كبيرة جدًا أو عديدة.
نرى "غيت مع ملفات كبيرة"(" كبير "كما في الحجم أو الرقم).

Diff'ing Pictures/Graphics ليست ميزة تدعمها GIT أصليًا ، ولكن يمكن لخدمة استضافة REPO GIT توسيع واجهة المستخدم الرسومية على الويب لتقديم مثل هذا الدعم.

أعلن جيثب للتو (يونيو 2014) "عرض EPSD والتفاعل"، الذي يمتد" عرض الصور والانتشار"(نوفمبر 2011)

سيتم التعامل مع أي أصول PSD في مستودعاتك تمامًا مثل الصور ، مما يعني أنه يمكنك عرضها مضمّنًا واستخدام أوضاع عرض الصور الثلاثة لمعرفة ما الذي تم تغييره في الالتزام.

تحديث ماخ 2022: هذا هو لم يعد مدعومًا.
نرى "العمل مع الملفات غير الرمز"بالنسبة للملفات التي يتم دعم Diff لها.

https://cloud.githubusercontent.com/assets/2546/3165594/55f2798a-eb56-11e3-92e7-b79ad791a697.gif

أولئك الذين يجيبون "لا" لديهم أسباب وجيهة للغاية ، لكن هذا ليس مستحيلًا.

سأستخدم GitHub بنجاح لإدارة مشروع مفتوح المصدر تتكون من مئات ملفات Illustrator و PDFs (وكذلك بعض التعليمات البرمجية والنص ، ولكن هذا هو blip صغيرة في المقارنة). يخرج الريبو في حوالي 8 جيجابايت. السبب في أنني أفعل شيئًا مجنونًا جدًا هو أن ملفات Illustrator هي جوهر المنتج ، وليس مجرد عمل فني مزخرف ليتماشى معه - فهي مصدر من المشروع - ولأنني أردت التأكد من أنه سيبقى مفتوح المصدر.

كانت هناك بعض النقاط الشائكة ، والأشياء التي يجب أن تكون على دراية بها. أود أن أقترح:

  • لا تحاول هذا إلا إذا كنت على دراية بالجيت. يمكن أن يكون حل النزاعات والقضايا المتفرعة شائكة حقًا ، وقد تضطر إلى القيام ببعض الأشياء الغامضة الجميلة للحفاظ على ريبو سعداء. لا أحد يتوقع منك أن تعرف كل ركن من أركان Git (لست متأكدًا من أن شخصًا عاقلًا يمكنه) ، لكن أعرف ما يكفي أنه يمكنك Google الباقي.

  • تأكد من أنك مرتاح باستخدام GIT على سطر الأوامر. قد تحميك أدوات واجهة المستخدم الرسومية من التعقيد ، لكنها تمنعك أيضًا من فهم ما يجري تحت الأغطية. بمجرد أن يكون لديك هذا الفهم ، فأنت حر في استخدام واجهة المستخدم الرسومية ل 95 ٪ من الوقت.

  • تجنب التفرع إن أمكن. لا تندمج الملفات الثنائية الطريقة التي تعمل بها الكود ، لذلك يمكن أن يكون الجمع بين الفروع معًا فوضويًا وشاقًا.

  • تعرف على ميزات محددة من GIT يمكن أن تساعدك على إدارة حجم وتعقيد REPO: Dechings الجزئي ، العلامات ، git gc, ، إلخ

  • خذ وقتًا للتخطيط مقدمًا. قد يكون أنك ستستفيد من فصل المشروع إلى اثنين أو أكثر من repos git ، أو من الجمع بينه وخدمة أخرى.

  • إذا كنت تستخدم خدمة استضافة ، فتأكد من معرفة الحدود التي تفرضها على الريبو. على سبيل المثال ، سوف يشكو Github من الملفات التي تزيد عن 100 ميجابايت. فيما يلي إرشاداتهم الموصى بها للثنائيات.

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

من خلال استخدام الطبقات والروابط وتوفير إصدارات معلمة من الملفات ، سيكون لديك استخدام أكثر فاعلية للتخزين مما قد يوفر لك SVN على الإطلاق لملفات Adobe الأصلية.

الاستثناء الوحيد الذي يمكنني التفكير فيه هو للملفات المستندة إلى XML ، مثل SVGs Pure-Vector.

إذا كنت بحاجة فقط إلى إدارة إصدار بسيط مع واجهة مستخدم بسيطة ، فإن Subversion يعمل بشكل جيد لإدارة هذه الملفات. لديها دعم جيد واجهة المستخدم الرسومية (على سبيل المثال SmartSVN أو TortoisesVN) مع تكامل Shell. من الأسهل أيضًا التحقق من الملفات التي تحتاجها بشكل انتقائي.

لجميعكم يشيرون إلى أن حجم الملفات يمثل مشكلة كبيرة ، git-lfs يأتي لحل هذه المشكلة.

من السهل التثبيت والاستخدام ، ومنصات شعبية مثل جيثب, جيتلاب أو Bitbucket دعمها دون أي مشكلة.

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