এর সঠিক কোনও উত্তর নেই।
সাধারণভাবে বলতে গেলে, সুরকারকে বিল্ড সিস্টেমটি যা বোঝানো হচ্ছে তা করা উচিত নয় এবং আপনি ভিসিএসে কম্পোজারআলক স্থাপন করা উচিত নয়। সুরকারের অদ্ভুতভাবে এটি পিছনের দিকে থাকতে পারে। উত্পাদনের চেয়ে শেষ ব্যবহারকারীরা লক ফাইল ব্যবহার করা উচিত নয়। সাধারণত আপনার বিল্ড সিস্টেমটি প্রতিবার খালি দিরের চেয়ে স্ন্যাপশট, পুনরায় ব্যবহারযোগ্য ডায়ার ইত্যাদি রাখে। লোকেরা সুরকারের কাছ থেকে কোনও লিবি চেকআউট করে যে লিবটি কোনও লক ব্যবহার করতে চায় যাতে লিব লোডের নির্ভরতাগুলির বিরুদ্ধে পরীক্ষা করা যায়।
অন্যদিকে যা সংস্করণ পরিচালনার বোঝাটিকে উল্লেখযোগ্যভাবে বৃদ্ধি করে, যেখানে আপনি প্রায় প্রতিটি লাইব্রেরির একাধিক সংস্করণ দেখতে চান কারণ নির্ভরতা কঠোরভাবে লক হয়ে যায়। যদি প্রতিটি লাইব্রেরির কিছুটা আলাদা সংস্করণ হওয়ার সম্ভাবনা থাকে তবে আপনার কয়েকটি একাধিক গ্রন্থাগার সংস্করণ সমর্থন প্রয়োজন এবং আপনি দ্রুত নির্ভরতার আকারও দেখতে পারেন, তাই এটি পাতায় রাখার পরামর্শ।
এটি বোর্ডে নিয়ে গেলে, আমি লাইব্রেরি বা আপনার নিজস্ব কর্মী হিসাবে কার্যকর হওয়ার জন্য লক ফাইলগুলি সত্যিই খুঁজে পাই না। এটি কেবলমাত্র আমার বিল্ড / টেস্টিং প্ল্যাটফর্মেই ব্যবহার করা হয় যা অনুরোধকালে কেবল কোনও আপডেট হওয়া, পরীক্ষার জন্য পুনরাবৃত্তযোগ্য বিল্ড সরবরাহ, বিল্ডিং এবং মোতায়েনের জন্য বহিরাগত অর্জিত সম্পদকে অব্যাহত রাখে। এটি ভিসিএসে রাখা যেতে পারে এটি সর্বদা উত্স গাছের সাথে রাখা হয় না, বিল্ড ট্রিগুলি ভিসিএস কাঠামোর অন্য কোথাও থাকবে বা অন্য কোনও সিস্টেম দ্বারা পরিচালিত হবে। যদি এটি কোনও ভিসিএসে সঞ্চিত থাকে তবে এটি উত্স গাছের মতো একই রেপোতে রাখবে কিনা তা বিতর্কযোগ্য কারণ অন্যথায় প্রতিটি টানা বিল্ড সম্পদ তৈরি করতে পারে। উত্পাদনের / সংবেদনশীল শংসাপত্রগুলি এবং ব্লাট ব্যতিক্রমগুলি সহ আমি সবকিছু সাজানো রেপোতে বেশ পছন্দ করি quite
এসভিএন গিটের চেয়ে এটি আরও ভাল করতে পারে কারণ এটি আপনাকে পুরো রেপো অর্জন করতে বাধ্য করে না (যদিও আমি সন্দেহ করি যে গিটারের পক্ষে আসলে কড়া প্রয়োজন নেই তবে এর জন্য সমর্থন সীমাবদ্ধ এবং এটি সাধারণত ব্যবহৃত হয় না)। সাধারণ বিল্ড রেপোগুলি সাধারণত একটি ওভারলে শাখা হয় যা আপনি বিল্ড ট্রিকে মার্জ / রফতানি করে। কিছু লোক তাদের উত্স গাছের মধ্যে বহিরাগত সংস্থানগুলি একত্রিত করে বা আরও পৃথক, বাহ্যিক, বিল্ড এবং উত্স গাছগুলি। এটি সাধারণত দুটি উদ্দেশ্যে পরিবেশন করে, ক্যাচিং এবং পুনরাবৃত্তিযোগ্য বিল্ডগুলি বানাতে পারে তবে কখনও কখনও এটি কমপক্ষে কিছু স্তরে পৃথক রাখলে তাজা / ফাঁকা বিল্ড এবং একাধিক বিল্ড সহজেই অনুমতি দেয়।
এর জন্য বেশ কয়েকটি কৌশল রয়েছে এবং এগুলির কোনও বিশেষত উত্স তালিকাকে অবিরত করার পক্ষে বিশেষভাবে কার্যকর হয় না যদি না আপনি আপনার উত্স ট্রিতে বাহ্যিক উত্স রাখেন।
ফাইলটিতে হ্যাশ জাতীয় জিনিসও তাদের রয়েছে, যখন দু'জন লোক প্যাকেজ আপডেট করে তবে কীভাবে তা একীভূত হয়? এটিই আপনাকে ভাবতে বাধ্য করে যে সম্ভবত এটি ভুল ধারণাযুক্ত।
লক ফাইলগুলির জন্য লোকেরা যে যুক্তিগুলি এগিয়ে দিচ্ছে সেগুলি হ'ল সমস্যাগুলির ক্ষেত্রে তারা খুব নির্দিষ্ট এবং সীমাবদ্ধ দৃষ্টিভঙ্গি নিয়েছে। পুনরাবৃত্তিযোগ্য বিল্ড এবং ধারাবাহিক বিল্ডস চান? ভিসিএসে বিক্রেতা ফোল্ডার অন্তর্ভুক্ত করুন। এরপরে আপনি সম্পদ আনার পাশাপাশি বিল্ড চলাকালীন সম্ভাব্য ভাঙা বাহ্যিক সংস্থার উপর নির্ভর না করার গতি বাড়িয়েছেন। আমি যে বিল্ড এবং পাইপলাইন তৈরি করি তার কোনওটিরই বাহ্যিক অ্যাক্সেসের প্রয়োজন না হলে সম্পূর্ণ প্রয়োজন না। যদি আপনাকে কোনও বাহ্যিক উত্স আপডেট করতে হয় তবে এটি একবারে এবং একবারে। রচয়িতা যা অর্জন করতে চাইছেন তা বিতরণ ব্যবস্থার জন্য অর্থবোধ করার আগেই তা বোঝা যায় না কারণ এটি সাধারণ সংঘর্ষের সাথে লাইব্রেরি আপডেটের জন্য লাইব্রেরি নির্ভরতা এবং আপডেটগুলি প্যাকেজ আপডেট করার ক্ষেত্রে সবচেয়ে ধীর হিসাবে ধীরে ধীরে শেষ হয় would
অতিরিক্তভাবে আমি হিংস্রভাবে আপডেট করি। প্রতিবার যখন আমি বিকাশ করি ততবার আমি আপডেট করি এবং সবকিছু পরীক্ষা করি। লক্ষণীয় সংস্করণ ড্রিফটটি লুকোচুরি করার জন্য খুব ছোট একটি উইন্ডো রয়েছে Real বাস্তবিকরূপে, যখন শব্দার্থক সংস্করণটি সমুন্নত থাকে, যা সুরকারের হয়ে থাকে,
কম্পোজারজেজসনে আপনি আপনার প্রয়োজনীয় প্যাকেজগুলি এবং তাদের সংস্করণগুলি রেখেছেন। আপনি সেখানে সংস্করণগুলি লক করতে পারেন। তবে সেই প্যাকেজগুলির গতিশীল সংস্করণগুলির সাথে নির্ভরশীলতা রয়েছে যা সুরকার জর্জন দ্বারা লক করা হবে না (যদিও আপনি দেখতে পাচ্ছেন না যে আপনি সেগুলি সেখানে ভার্সন লক করতে চান না কেন) তবে অন্য কেউ সুরকার ইনস্টল চালাচ্ছেন লক ছাড়া অন্য কিছু পেতে। আপনি এটি সম্পর্কে খুব বেশি যত্ন নিতে পারেন না বা আপনি যত্ন নিতে পারেন, এটি নির্ভর করে। আপনার যত্ন করা উচিত? সম্ভবত কোনও পরিস্থিতি এবং সম্ভাব্য প্রভাব সম্পর্কে আপনি এটি সম্পর্কে সচেতন তা নিশ্চিত করার জন্য যথেষ্ট, তবে আপনার সমস্যাটি নাও হতে পারে যদি আপনার কাছে সর্বদা প্রথমে DRY চালানোর সময় থাকে এবং আপডেট হওয়া যে কোনও কিছু ঠিক করতে পারে।
ঝামেলা সুরকার কখনও কখনও কেবল সেখানে উপস্থিত না থাকার চেষ্টা করে এবং সুরকার লক ফাইলগুলি তৈরি করতে পারে এমন ঝামেলা তাৎপর্যপূর্ণ। উত্স সম্পদ বনাম (ভিসিএসে পৃথকভাবে যোগ দিতে হবে কিনা) ব্যবহারকারীদের তাদের কী করা উচিত বা করা উচিত তা বলার তাদের কোনও অধিকার নেই, কারণ এটি তাদের কোনও ব্যবসা নয়, তারা আপনার বা আমার কোনও পরিচালক নয়। "রচয়িতা বলেছেন" কোনও কর্তৃত্ব নয়, তারা আপনার উচ্চতর কর্মকর্তা নন বা তারা এ বিষয়ে কাউকে কোনও শ্রেষ্ঠত্ব দেয় না। আপনার আসল পরিস্থিতি এবং এর জন্য সবচেয়ে ভাল কি তা কেবল আপনি জানেন। যাইহোক, তারা ব্যবহারকারীদের জন্য কোনও ডিফল্ট কোর্সের পরামর্শ দিতে পারে যা জিনিসগুলি কীভাবে কাজ করে সেই ক্ষেত্রে আপনি এটি অনুসরণ করতে চাইতে পারেন তবে ব্যক্তিগতভাবে আমি তা মনে করি না ' কীভাবে জিনিসগুলি কাজ করে এবং আপনার প্রয়োজনীয়তাগুলি যথাযথভাবে কাজ করতে সক্ষম হয় তা জেনে আসার বিকল্প বিকল্প। শেষ পর্যন্ত, তাদের এই প্রশ্নের উত্তরটি একটি সেরা অনুমান। সুরকার তৈরি করেন এমন লোকেরা জানেন না যে আপনার সুরকারের তালা কোথায় রাখা উচিত এবং তাদেরও উচিত। তাদের একমাত্র দায়িত্ব হল এটি কী এবং এটি কী করে তা আপনাকে জানানো। এর বাইরে আপনাকে আপনার পক্ষে সেরা কি তা সিদ্ধান্ত নেওয়া দরকার।
লক ফাইলটি রাখা ব্যবহারের জন্য সমস্যাযুক্ত কারণ সুরকার এটি লক বা জেএসএন ব্যবহার করে কিনা তা সম্পর্কে খুব গোপনীয় এবং উভয়কে একসাথে ব্যবহার করা ভাল নয়। আপনি যদি ইনস্টলটি চালান তবে এটি কেবলমাত্র লক ফাইলটি ব্যবহার করে এটি উপস্থিত হবে যদি আপনি কম্পোজার.জেসসনে কিছু যুক্ত করেন তবে এটি ইনস্টল হবে না কারণ এটি আপনার লকটিতে নেই। এটি জেনসন / লক ফাইলের ক্ষেত্রে কী কী অপারেশনগুলি আসলে কাজ করে এবং কী করছে তা মোটেও স্বজ্ঞাত নয় (কখনও কখনও সাহায্যে ইনস্টলটি একটি প্যাকেজের নাম নেয় তবে এটি ব্যবহার করার চেষ্টা করার পরে তা বলে না) )।
লকটি আপডেট করতে বা মূলত জেসন থেকে পরিবর্তনগুলি প্রয়োগ করতে আপনাকে আপডেট ব্যবহার করতে হবে এবং আপনি সবকিছু আপডেট করতে চান না। কী ইনস্টল করা উচিত তা চয়ন করার জন্য লকটি অগ্রাধিকার নেয়। যদি কোনও লক ফাইল থাকে তবে এটি কী ব্যবহৃত হয়। আপনি কিছুটা আপডেট সীমাবদ্ধ করতে পারেন তবে সিস্টেমটি এখনও কেবল বিশৃঙ্খলা।
আপডেট করতে একটি বয়স লাগে, র্যামের জিগস থাকে। আমি সন্দেহ করি যে আপনি যদি এমন একটি প্রকল্প বাছাই করেন যা কিছুক্ষণের জন্য ছোঁয়া হয়নি যে এটি এটির সংস্করণগুলি দেখেছিল যা সময়ের সাথে সাথে আরও বেশি হবে এবং এটি সম্ভবত দক্ষতার সাথে এটি করেন না যা কেবল এটি শ্বাসরোধ করে।
আপনি যৌগিক হওয়ার আশা করতে পারেন না এমন গোপন সংমিশ্রণ কমান্ড থাকার সময় এগুলি খুব স্পষ্ট হয়। ডিফল্টরূপে সুরকার অপসারণ কমান্ডটি উদাহরণস্বরূপ সুরকার আপডেট এবং সুরকারকে অপসারণ করতে মানচিত্রে উপস্থিত হয়।
আপনার যে প্রশ্নটি সত্যই জিজ্ঞাসা করা উচিত তা হ'ল এটি নয় যে আপনার লকটি আপনার উত্স গাছের মধ্যে রাখা উচিত বা বিকল্পভাবে আপনি কোনও কোনও ফ্যাশনে এটি চালিয়ে যাওয়া উচিত কিনা বা বরং এটি আসলে কী করে তা আপনার জিজ্ঞাসা করা উচিত, তবে আপনি নিজের জন্য সিদ্ধান্ত নিতে পারেন আপনার যখন এটি চালিয়ে যাওয়া দরকার এবং কোথায়।
আমি উল্লেখ করব যে লকটি রাখার ক্ষমতা থাকা আপনার পক্ষে যখন একটি শক্তিশালী বাহ্যিক নির্ভরতা দৃ pers়তা কৌশল থাকে তবে এটি আপনার (যে উদ্ভব) ট্র্যাকিং এবং আপডেট করার জন্য দরকারী তথ্য রাখে তবে আপনি যদি তা না করেন তবে তবে এটি এখানে নেই এখানেও নয়। এটি আপনার উত্স গাছগুলিকে দূষিত করার বাধ্যতামূলক বিকল্প হিসাবে যখন আপনার গলাটি বাধ্য করে তখন কার্যকর হয় না। লিগ্যাসি কোডবেসগুলিতে সন্ধান করা একটি খুব সাধারণ বিষয় যেখানে লোকেরা সুরকার ব্যবহারের চেষ্টা করার সময় লোকেদের রচনাগুলি বাস্তবায়িত হয়নি এবং ভেঙে গেছে এমন রচনাগুলিতে লোকেরা প্রচুর পরিবর্তন করেছে। কোনও রচয়িতা। লক, কোনও ডিজাইন সমস্যা নেই।