পরীক্ষাগুলি দীর্ঘ সময় নিলে ট্রাঙ্ককে কীভাবে স্থিতিশীল রাখা যায়?


9

আমাদের কাছে তিনটি টেস্ট স্যুট রয়েছে:

  • একটি "ছোট" স্যুট, চালাতে কয়েক ঘন্টা সময় নেয়
  • একটি "মাঝারি" স্যুট যা একাধিক ঘন্টা সময় নেয়, সাধারণত প্রতি রাতে (রাত্রে) চলত
  • একটি "বড়" স্যুট যা চালাতে এক সপ্তাহ সময় নেয়

আমাদের কাছে আরও সংক্ষিপ্ত পরীক্ষার স্যুট রয়েছে, তবে আমি এখানে সেগুলিতে মনোযোগ দিচ্ছি না।

বর্তমান পদ্ধতিটি প্রতিটি ট্রাঙ্কে প্রতিশ্রুতি দেওয়ার আগে ছোট স্যুটটি চালানো হয়। তারপরে, মাঝারি স্যুটটি প্রতি রাতে চলবে, এবং যদি সকালে এটি ব্যর্থ হয়ে যায় তবে আমরা গতকালের কোন কমিটকে দোষী বলে গণ্য করা, পরীক্ষার প্রতিশ্রুতিবদ্ধ এবং পুনরায় পরীক্ষার চেষ্টা করা হয়েছিল তা আলাদা করার চেষ্টা করি। বৃহত্তর স্যুটটির জন্য অনুরূপ প্রক্রিয়া, কেবলমাত্র রাতের ফ্রিকোয়েন্সি পরিবর্তে সাপ্তাহিক সময়ে করা হয়।

দুর্ভাগ্যক্রমে, মাঝারি স্যুটটি প্রায়শই ব্যর্থ হয়। এর অর্থ হ'ল ট্রাঙ্কটি প্রায়শই অস্থির থাকে, যা আপনি যখন পরিবর্তন করে পরীক্ষা করতে চান তখন অত্যন্ত বিরক্তিকর। এটি বিরক্তিকর কারণ কারণ আমি যখন ট্রাঙ্কটি থেকে পরীক্ষা করি তখন আমি স্থিতিশীলভাবে এটি জানতে পারি না এবং যদি কোনও পরীক্ষায় ব্যর্থ হয় তবে আমি নিশ্চিতভাবে জানতে পারি না এটি আমার দোষ কিনা বা না।

আমার প্রশ্ন হ'ল, এই ধরণের পরিস্থিতি এমনভাবে পরিচালনা করার জন্য কি কোনও জ্ঞাত পদ্ধতি রয়েছে যা ট্রাঙ্কটি সর্বদা শীর্ষ আকারে ছেড়ে যায়? উদাহরণস্বরূপ "একটি বিশেষ প্রোকমমিট শাখায় প্রতিশ্রুতিবদ্ধ যা পরে প্রতি সময় রাত্রে যাওয়ার সময় ট্রাঙ্কটি আপডেট করবে"।

এবং এসভিএন এর মতো কেন্দ্রীভূত উত্স নিয়ন্ত্রণ ব্যবস্থা বা গিটের মতো বিতরণকৃত কোনও কিনা এটি বিবেচনা করে?

জিনিসগুলি পরিবর্তনের সীমিত ক্ষমতার সাথে আমি একজন জুনিয়র বিকাশকারী, আমি কেবল এটাই বোঝার চেষ্টা করছি যে আমার এই ব্যথাটি হ্যান্ডেল করার কোনও উপায় আছে কিনা।


6
আপনি কোন সফ্টওয়্যারটিতে কাজ করছেন তা আমার কোনও ধারণা নেই তবে একটি ছোট টেস্ট স্যুট যা চালাতে কয়েক ঘন্টা সময় লাগে তা হ'ল কিছু ডাব্লুটিএফ। যদি এগুলি দ্রুত চালিত হয় তবে এটি আরও সহজ হবে, আপনার পরীক্ষাগুলিকে প্রবাহিত করার কোনও উপায় নেই?
বেনজামিন ব্যানিয়ের

2
ট্রাঙ্ক অস্থির হওয়ার বিষয়ে এত "চরম বিরক্তিকর" কী? আপনি জানেন কিনা জানেন না, তবে সর্বাধিক জনপ্রিয় শাখাগুলি কৌশলটিকে অস্থির ট্রাঙ্কও
gnat

1
পরীক্ষার স্যুটটি অনুকূলকরণের বিভিন্ন উপায় রয়েছে (অন্য কোনও সফ্টওয়্যারের মতো) for আপনার এতক্ষণ কেন সময় লাগবে সে সম্পর্কে আমার কোনও ধারণা নেই তবে আপনি উদাহরণস্বরূপ পরীক্ষার কিছু পরিবেশ পুনরায় ব্যবহার করতে সক্ষম হতে পারেন বা চলার সময় আরও ভাল অ্যালগরিদম / ডেটা স্ট্রাকচার ব্যবহার করতে পারেন (প্রোফাইলিং সহায়তা করে)। এও হতে পারে যে কেউ প্রতিনিধি নমুনাগুলি সনাক্ত করতে সময় নেয়নি এবং আপনি কেবলমাত্র কোনও রেফারেন্সের বিরুদ্ধে প্রতিটি সম্ভাব্য ইনপুট / আউটপুট পরীক্ষা করেন test হতে পারে আপনার বিল্ডসিস্টেম আপনাকে কোড-পরীক্ষা নির্ভরতাগুলি এনকোড করার অনুমতি দেয় যাতে আপনার পুরো সেটটি চালানোর দরকার নেই। এবং আমি জানি এটি আপনার প্রশ্ন ছিল না, এ কারণেই আমি এটিকে একটি মন্তব্য করেছিলাম, উত্তর নয়।
বেনিয়ামিন ব্যানিয়ের

1
... হুম, আপনার আরও ভাল বিকল্পটি পরীক্ষা এবং অ্যাপ্লিকেশন লগিংয়ের উন্নতি করতে পারে যাতে ব্যর্থতার কারণ খুঁজে পাওয়া সহজ। এইভাবে, একজনকে "গোয়েন্দা তদন্তে" প্রচেষ্টা নষ্ট করার পরিবর্তে ব্যর্থতার কারণটি খুঁজে বের করতে হবে এবং অনুসন্ধানের নির্দিষ্ট কোডটি কে, কখন এবং কেন পরিবর্তন করেছে ...
gnat

1
@ হংক কিছু পরীক্ষা চালাতে কেবল দীর্ঘ সময় নেয়। আমি এমন সংস্থার জন্য কাজ করি যা ডেটা অর্জনের সরঞ্জামাদি তৈরি করে এবং আমাদের "আংশিক" পরীক্ষার জন্য প্রায় এক ঘন্টা সময় লাগে। পরীক্ষাগুলিতে বিভিন্ন ধরণের পরিমাপ করা প্রয়োজন এবং এতে সময় লাগে মাত্র।
Velociraptors

উত্তর:


1

অস্থিরতার মূল কারণটি সংশোধন করার একমাত্র উপায় হ'ল কোডটি ডিকুয়াল করা যাতে পরিবর্তনগুলি আরও বিচ্ছিন্ন হয়, যেমন অন্যান্য উত্তরগুলি বলেছে।

তবে স্বতন্ত্র বিকাশকারী হিসাবে যদি আপনি ব্যক্তিগতভাবে কাজ করার জন্য আরও স্থিতিশীল নির্মাণ চান তবে এটি সমাধান করা তুলনামূলক সহজ। টিপটি ব্যবহার না করে আপনি কেবল শেষ বিল্ডটি টানুন যা রাতারাতি পরীক্ষার স্যুটটি আপনার কার্যক্ষম গাছের মধ্যে দিয়ে গেছে। আপনি যদি প্রতিটি পরিবর্তনের জন্য বৈশিষ্ট্যযুক্ত শাখা তৈরি করতে পারেন তবে শেষ স্থিতিশীল বিল্ডের শাখা বন্ধ করুন।

হ্যাঁ, আপনার গাছটি কয়েক দিন পিছনে থাকবে, তবে বেশিরভাগ সময় এতে কিছু আসে যায় না। স্থিতিশীল বিল্ডের বিরুদ্ধে আপনার কাজটি করুন, যাতে আপনি জানেন যে আপনার পরিবর্তনগুলি কোনও পরীক্ষার বিরতি নিয়েছে, তারপরে আপনি চেক ইন করার আগে সর্বশেষে আপডেট করুন এবং আপনার সাধারণ সংহতকরণ করুন। তারপরে আপনি চেক ইন করার পরে, আবার শেষ স্থিতিশীল বিল্ডটিতে ফিরে আসুন।

আপনাকে এখনও অগোছালো একীকরণের কাজটি করতে হবে, তবে এই পদ্ধতিটি সম্পর্কে আমি যা পছন্দ করি তা হ'ল এটি আমার জন্য আরও বেশি সুবিধাজনক সময়ের জন্য ইন্টিগ্রেশন কাজকে আলাদা করে দেয় এবং সুবিধাজনক না হলে আমাকে উন্নয়নের জন্য একটি স্থিতিশীল কোড দেয় base আমার পরিবর্তনগুলি যখন আমার সম্ভবত এটির পরিবর্তে কারও কারও বিরতিতে আসে তখন আমার আরও অনেক ভাল ধারণা থাকে।


1
-1 শাখা থেকে কাজ করা কার্যকরী বিকল্প, তবে এটি পরীক্ষা করার পরামর্শ ছাড়া এটি সুপারিশ করা ভাল হওয়ার চেয়ে বেশি ক্ষতি করতে পারে। এটি কেবলমাত্র নির্দিষ্ট পরীক্ষার দ্বারা দেখা যায় যে এটি নির্দিষ্ট প্রকল্পের জন্য সম্ভব এবং না। উদাহরণস্বরূপ, আমি প্রায় 2 বছর আগে একটি প্রকল্পে করেছি, যেমন পরীক্ষায় দেখা গেছে শাখা থেকে কাজ করা অস্থির ট্রাঙ্কের তুলনায় 7x গুণ বেশি প্রচেষ্টা নিচ্ছে
gnat

ধন্যবাদ কার্ল! যদিও আমি যা শিখার আশা করছিলাম তা এটি নয়, এটি একটি খুব ব্যবহারিক পদ্ধতি যা আমাকে হাতের মুঠোয় সমাধান করতে সহায়তা করতে পারে। এবং আমি সম্মত যে ট্রাঙ্কের পিছনে কয়েক দিন কাজ করা খুব কমই ইন্টিগ্রেশন সমস্যার কারণ হতে পারে।
ওক

12

আমি জানি আপনি এটি এড়াতে চাইছেন, তবে এখানে আসল অন্তর্দৃষ্টিটি বুঝতে পেরেছি যে আপনার কোডবেসে কোনও গুরুতর সমস্যা রয়েছে: আপনার কোডটি স্থিতিশীল কিনা তা নিশ্চিত হওয়ার জন্য আপনাকে এক সপ্তাহের জন্য পরীক্ষার একটি সম্পূর্ণ স্যুট চালানো দরকার!

এই সমস্যার সমাধানের সর্বাধিক সুবিধাজনক উপায় হ'ল আপনার কোড বেস এবং পরীক্ষাগুলি (স্বতন্ত্র) সাব-ইউনিটগুলিতে পৃথক করা শুরু করা।
এর বিশাল সুবিধা রয়েছে:

  • এই ইউনিটগুলির প্রত্যেকের জন্য পরীক্ষাগুলি দ্রুত চলবে (তাদের মধ্যে কেবল কম রয়েছে), এবং স্বাধীন বা ডাউন স্ট্রিম ইউনিটের কোনওটিতে কিছু ভুল হয়ে গেলে তারা ভাঙবে না।
  • একটি ব্যর্থ পরীক্ষা একটি নির্দিষ্ট ইউনিটে পিনপয়েন্ট করা হবে যা সমস্যার উত্স খুঁজে পাওয়া আরও সহজ করে তুলবে।
  • আপনি বিভিন্ন ইউনিটের ভিসিএসের অবস্থানগুলি পৃথক করতে পারেন যাতে আপনার "স্থিতিশীল" শাখা প্রতিটি ইউনিটের সর্বশেষ সফলভাবে পরীক্ষিত বিল্ডের একটি বাছাই করা মিক্স হতে পারে, যাতে একটি ভাঙা ইউনিট বা দুটি আপনার "স্থিতিশীল" সংস্করণটিকে অস্থিতিশীল করে না ।

আপনার ভিসিএসের কাঠামোর ফ্লিপসাইড পরিচালনা আরও জটিল হয়ে উঠবে তবে পুরো সপ্তাহে আপনার সম্পূর্ণ পরীক্ষার জন্য, আমি মনে করি আপনি ব্যথা নিতে পারেন!

আমি এখনও কোনও রূপে বা অন্য কোনও "স্থিতিশীল" এবং "বিকাশ" শাখার কৌশলটি ব্যবহার করার পরামর্শ দিচ্ছি, তবে সে সম্পর্কে আরও অনেকগুলি উপায় রয়েছে এবং আপনি আপনার সংস্থার পক্ষে সবচেয়ে ভাল কাজ করে এমন একটিটিকে বেছে নিতে পারেন (নির্দিষ্ট সংশোধনগুলির সাথে মেটা-সংগ্রহস্থলগুলি নির্দেশ করে) প্রতিটি ইউনিটের জন্য পৃথক সংগ্রহস্থল, একটি স্থিতিশীল শাখা এবং একটি দেব শাখা, বৈশিষ্ট্যযুক্ত শাখা ....)


1
আমি কখনও বলিনি যে বৃহত পরীক্ষাটি একটি পারমাণবিক পরীক্ষা, এটি একটি পরীক্ষার স্যুট । যখন কোনও পৃথক বিকাশকারী এক্স এলিমেন্টে কোনও পরিবর্তন করে, তখন তিনি এক্সের সাথে সম্পর্কিত পরীক্ষা চালান - সেগুলি কোনও পরীক্ষার স্যুট থেকে উদ্ভূত তা বিবেচনা করে না। এটি সাপ্তাহিক পরীক্ষার পাশাপাশি , যা এক জায়গায় পরিবর্তন অপ্রত্যাশিতভাবে অন্য কোনও জায়গায় প্রভাব ফেলবে না তা নিশ্চিত করে চালানো হয়। তবে আপনি একটি আকর্ষণীয় বিষয়টি উল্লেখ করেছেন যে কমপক্ষে এইভাবে জিনিসগুলি আলাদা করা নির্দিষ্ট মডিউলগুলির জন্য পরীক্ষার গতি বাড়িয়ে তুলতে সহায়তা করবে এবং ঝুঁকিটিকে প্রায় একই স্তরে রাখবেন।
ওক

2
@ ওক - আচ্ছা, একরকমভাবে স্যুট যদি আইএস চালিয়ে যায় তবে একমাত্র আপনি কোডটি স্থিতিশীল হওয়ার বিষয়ে সত্যই নিশ্চিত, তবে আপনি একটি ভাল বক্তব্য রেখেছেন, তাই আমি আমার উত্তরটি সম্পাদনা করেছি।
জোরিস টিমারম্যানস

4
আমাদের সংকলকগুলির জন্য আমাদের বিশাল পরীক্ষাগুলি রয়েছে যার মধ্যে কয়েকটি চালাতে বেশ কয়েক দিন সময় নেয় এবং আমি মনে করি না যে এটি সি ++ কম্পাইলারের মতো জটিল সফ্টওয়্যারটির পক্ষে জটিল। এটি এমন নয় যে স্যুটটি "স্থিতিশীল" হিসাবে বিবেচিত হবে তা সংজ্ঞায়িত করে, বরং কোড জেনারেশনের বিভিন্ন মিলিয়ন মিলিয়ন কেনারকেস রয়েছে যে সমস্ত দিনই এটি পরীক্ষা করা অসম্ভব।
জেস্পেরই

1
@ জেস্পের - এটি বোধগম্য, যদি বিশাল পরীক্ষার স্যুটটি "স্থিতিশীল" সংজ্ঞায়িত না করে তবে একটি বিশাল স্যানিটি পরীক্ষা। আমি পুরো স্যুট (বা এমনকি মাঝারি স্যুট) খুব প্রায়শই ব্যর্থ হওয়ার আশা করবো না।
জোরিস টিমারম্যানস

1

এসভিএন-এর পক্ষে, "প্রাক-প্রতিশ্রুতিবদ্ধ" এর মতো জিনিস সম্পর্কে আমি জানি না। আমি মনে করি যখন পরীক্ষা ব্যর্থ হয় তখন এটি কমিট এবং রোলব্যাক উত্পাদন করতে পারে। ডক-ব্রাউন যেমন বলেছেন, কেবলমাত্র অস্থায়ী শাখায় প্রতিশ্রুতিবদ্ধ হওয়া এবং এটি পরে ট্রাঙ্কের সাথে একীভূত করা way

গিট বা পার্কের মতো বিতরণকারী ব্যবহার করে, আমি মনে করি এটি সম্ভব হবে। একটি "টেস্টিং" সংগ্রহস্থল এবং একটি "স্থিতিশীল" সংগ্রহস্থল ব্যবহার করা। আপনি পরীক্ষার প্রতিনিধিটিকে চাপ দিন, রাতে এটি পরীক্ষা করুন এবং যদি সবকিছু ঠিকঠাক হয় তবে আপনি পরীক্ষা থেকে স্থিতিশীল দিকে এগিয়ে যান। অন্যথায়, আপনি পরীক্ষার প্রতিনিধিত্ব রোলব্যাক। আমি যখন পরীক্ষা থেকে স্থিতিশীল করার দিকে ধাক্কা দিই তখন সংস্করণ ইতিহাসটি কেমন দেখায় আমি কিছুটা অনিশ্চিত, তবে আমি মনে করি এটি করার সময় ভাঙা রোলব্যাকযুক্ত জিনিসগুলি বাদ দেওয়া সম্ভব। প্রথমে কিছুটা পরীক্ষা করা সবচেয়ে নিরাপদ হবে।

একটি বিকল্প হ'ল প্রতিটি ব্যক্তির স্থানীয় ট্রাঙ্ক রাত্রে পরীক্ষা করা। তারপরে, পাস করা পরীক্ষাগুলি লোকেরা সকালে এটি কেন্দ্রীয় সার্ভারে চাপ দেওয়ার অনুমতি দেয়।


1

আপনি যে ভিসিএস ব্যবহার করছেন তার সাথে আইএমএইচওর কোনও সম্পর্ক নেই। "আন্ডার টেস্ট" শাখা ব্যবহার করা সমাধান হতে পারে, যা কেন্দ্রিয়ায়িত বা বিতরণ করা ভিসিএসের মাধ্যমেও উপলব্ধি করা যায়। তবে সত্যই, আমি মনে করি আপনার অবস্থার সর্বোত্তম জিনিসটি মাঝারি পরীক্ষার স্যুটটি অনুকূলিতকরণ করার চেষ্টা করছে (মনে হচ্ছে এটিতে সর্বাধিক গুরুত্বপূর্ণ পরীক্ষা রয়েছে) যাতে এটি আরও দ্রুত চালিত হয়, এবং আপনি এটি প্রাক-প্রতিশ্রুতি-থেকে-ট্রাঙ্কের জন্য ব্যবহার করতে পারেন পরীক্ষাগুলি, যেমন আপনি এখন এটি আপনার "ছোট স্যুট" দিয়ে করেন।


আমি প্রায়শই এখানে পদ্ধতি সম্পর্কে জিজ্ঞাসা করছি - অর্থাত্, এই জাতীয় পরিস্থিতি মোকাবিলার কোনও সাধারণ উপায় কি? আসুন ধরে নেওয়া যাক, কমপক্ষে এই আলোচনার খাতিরে, যে পরীক্ষাগুলি তারা ইতিমধ্যে যা পেরেছে তার চেয়ে অনুকূল করা যায় না।
ওক

@ ওক: এখানে কেউ (আপনি?) আমার উত্তরটি নীচে ভোট দিয়েছেন - তবে কখনও কখনও আপনি যে জিনিসগুলি শুনতে চান না কেবল সেগুলিই কেবল সহায়তা করবে। আপনার প্রশ্নের নীচের আলোচনায় আপনি যেমন দেখতে পাচ্ছেন, অন্যরাও একই পরামর্শ দিয়েছে, তাই আমার পরামর্শটি তেমন খারাপ বলে মনে হচ্ছে না।
ডক ব্রাউন

+1, এটি সঠিক উত্তর। ওপির আসল প্রশ্ন হ'ল "সহায়তা, আমি জঞ্জাল দিয়ে ডুবেছি, নিজেকে সাহায্য করার জন্য আমি কোন পদ্ধতি ব্যবহার করতে পারি?" এবং উত্তরটি হ'ল সত্যিকারের পদ্ধতিটি আপনার চিন্তিত হওয়া উচিত নয়।
মিঃফক্স

1

ব্যর্থ মাধ্যম পরীক্ষা: বেশিরভাগ সময় একই পরীক্ষাগুলি ব্যর্থ হয় তা কি সত্য?

যদি কোনও ব্যর্থতা থাকে তবে কি সর্বদা একই সম্পর্কিত পরীক্ষাগুলি ব্যর্থ হয়?

যদি সত্য হয়: হতে পারে আপনি নির্বাচিতভাবে কিছু মাঝারি পরীক্ষাগুলি বেছে নিতে পারেন যা প্রায়শই ব্যর্থ হয় (ত্রুটিযুক্ত প্রতিটি শ্রেণীর জন্য একটি পরীক্ষা) এবং সেটিকে ছোট সেটের মধ্যে চালিত করে।

সত্যিকারের ডাটাবেস ব্যবহার করে বেশিরভাগ পরীক্ষাগুলি ইন্টিগ্রেশন-পরীক্ষা হয়? যদি তাই হয় তবে এগুলি কী এমন একটি ইউনিটেস্টের সাথে একটি উপহাস-ডাটাবেসযুক্ত প্রতিস্থাপন করা সম্ভব?


1

আপনার পরীক্ষাগুলি দ্রুত চালিত করা দরকার, এই চেনাশোনাটি বর্গাকার করার অন্য কোনও উপায় নেই।

সমস্যাটি বিবেচনা করুন: আপনি নিশ্চিত হতে চান যে যখন আপনি চেক আউট করবেন তখন আপনার কাজের কোড রয়েছে। অবশ্যই, আপনি মুক্তির আগে পর্যন্ত কমিট এবং শাখা প্রশস্ত করতে বিলম্ব করতে পারেন তবে এটি কেবল ইন্টিগ্রেশন না হওয়া পর্যন্ত সমস্যার সূচনাতে বিলম্ব করবে। যেমনটি রয়েছে, প্রতি একীভূত হওয়ার পরে কি আপনাকে সপ্তাহব্যাপী স্যুট চালাতে হবে? পদ্ধতিটি সমাধান নয়, সমাধানটি সম্পূর্ণ প্রযুক্তিগত।

আমি যা পরামর্শ দিচ্ছি তা এখানে:

1) পরীক্ষা যতটা সম্ভব পারমাণবিক করুন, এবং পরিবেশের পুনরায় ব্যবহারকে সর্বাধিক করুন।

2) এগুলি চালানোর জন্য একটি পরীক্ষার স্যুট ফার্ম পান 8 টির চেয়ে বেশি বড় মডিউলগুলি যদি আপনার 50 এর সাথে শেষ হয় তবে আপনি একটি অ্যামাজন ইসি 2 স্পট দৃষ্টান্তের একটি গোছা স্পিন করতে পারেন এবং পুরো স্যুটকে সমান্তরালে চালাতে পারেন। আমি নিশ্চিত যে এতে কিছু অর্থ ব্যয় হবে তবে এটি বিপুল পরিমাণ বিকাশকারী সময় সাশ্রয় করবে।


0

আপনার প্রশ্নে আপনি কী মেনে নিচ্ছেন তা হ'ল সমস্ত কমিট অবশ্যই পরীক্ষায় উত্তীর্ণ হয়। যদিও এটি অনুসরণ করা একটি দুর্দান্ত নিয়ম এবং এটি কিছুটা বোধগম্য মনে হয়, কখনও কখনও এটি ব্যবহারিক হয় না। আপনার কেস একটি উদাহরণ (যদিও ম্যাডকিথভি একটি উপস্থাপনা করে), এবং আমি ভিসিএস শাখা রাখা কল্পনা করতে পারি যাতে ডেভলপারদের মধ্যে পর্যাপ্ত সহযোগিতা না থাকলে আদি নিরস্ত হতে পারে।

বাস্তবে আপনি যা চান তা হ'ল কোনওভাবে জানতে হবে কোনটি পাস হয় বা ব্যর্থ হয়। আপনার প্রস্তাবিত একটি "প্রাক কমিট শাখা" কাজ করবে, তবে এটি বিকাশকারীদের কমিট করার সময় অতিরিক্ত পরিশ্রমের প্রয়োজন হতে পারে, যা বিক্রি করা শক্ত হতে পারে।

অনুরূপ পদ্ধতির সাহায্যে সহজ হতে পারে হ'ল লোকেরা যেমন খুশি তেমন ভাঙ্গার জন্য ট্রাঙ্ক ছেড়ে চলে যায়, এবং ভাঙ্গা না হয়ে কমিট করার জন্য একটি শাখা থাকে। একটি স্বয়ংক্রিয় স্ক্রিপ্টগুলি ট্রাঙ্কের সাথে তৈরি হওয়ার সাথে সাথে কমিটগুলির মধ্য দিয়ে যেতে পারে, তাদের উপর পরীক্ষা চালাতে এবং তারা পাস করলে তাদের শাখায় যুক্ত করতে পারে।

অথবা আপনি অযৌক্তিক সরল হতে পারেন এবং একটি স্ক্রিপ্ট থাকতে পারে যা পাঠ্য ফাইলে পাসিং কমিটগুলি তালিকাভুক্ত করে (যা নিজেই সংস্করণ নিয়ন্ত্রিত হতে পারে বা নাও হতে পারে)।

বা এমন একটি ব্যাচ সিস্টেম রয়েছে যা শাখাগুলি / সংশোধনগুলির (গাছের যে কোনও জায়গা থেকে) পরীক্ষা করার জন্য অনুরোধগুলি গ্রহণ করে এবং তাদের পরীক্ষা করে এবং যদি পাস হয় তবে তাদের ট্রাঙ্কে (বা অন্য কোনও শাখায়) প্রতিশ্রুতি দেয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.