বড় সংস্থাগুলিতে ক্রমাগত একীকরণের ব্যবস্থা কীভাবে করা হয়?


11

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

সুতরাং আমি অনুসন্ধান করেছি যে সংস্থাগুলিতে সিআই কীভাবে সংগঠিত রয়েছে যার এত বেশি বিকাশকারী বা আরও বেশি (মাইক্রোসফ্ট, ফেসবুক) রয়েছে এবং কিছুই খুঁজে পেল না। হয়তো, অভ্যন্তরীণরা আমাকে বলতে পারেন তখন?



@gnat আপনি কি পর্যাপ্ত? এটি কীভাবে সম্পর্কিত? আমি অভ্যন্তরীণ অভিজ্ঞতা এবং ঠিক উদাহরণস্বরূপ সংস্থাগুলি চেয়েছি। আমি কোনও গ্রাহক সমর্থন জিজ্ঞাসা করিনি।
মেগামোজগ

11
@gnat আমি কীভাবে এর সাথে সম্পর্কিত তা দেখছি না। মেগামোজগ: সিআই প্রকল্পগুলির মডিউল দ্বারা সংগঠিত, 1000 বিকাশকারীদের সাথে কোনও মডিউল নেই। সুতরাং যদি খুব বেশি লোক থাকে তবে আপনার প্রকল্প / মডিউলটি ছোট অংশে কেটে দিন।
ওয়ালফ্র্যাট

@ ওয়ালফ্র্যাট এটি সম্পূর্ণ সম্পর্কিত। এই সাইটগুলি বড় বড় সংস্থাগুলি তাদের সংস্থা কীভাবে বিভিন্ন কাজ করে সে সম্পর্কে অভ্যন্তরীণ জরিপ / পোল করার জন্য নয়। এক কাপড় সম্পর্কে জানতে আগ্রহী হয় তাহলে মত যে তারা এইসব কোম্পানীর সমর্থন চ্যানেল ব্যবহার করা উচিত
মশা

@ জাগ্রত আপনি যে লিঙ্কটি দিয়েছেন তা কীভাবে প্রয়োগ হয়েছে তা আমি সত্যিই দেখতে পাই না, বিশেষত ওয়ালফ্র্যাটের প্রতিক্রিয়ায় আপনি যে মন্তব্যটি দিয়েছিলেন তা দিয়ে। এই মন্তব্যের ভিত্তিতে এই আইএমএইচও হ'ল সঠিক লিঙ্ক হবে (পোল টাইপের প্রশ্নগুলির অংশ) সফ্টওয়্যারেনজেনারিং.মেটা.স্ট্যাকেক্সেঞ্জঞ্জ

উত্তর:


12

এটি মূলত একটি স্কেলিং সমস্যা। আপনি আপনার কাজকে মডিউলগুলিতে আলাদা করুন যা বিভিন্ন প্রকল্প এবং / অথবা আপনার পণ্যের বিভিন্ন কার্যকারিতা হতে পারে।

আপনার কাছে এমন দল থাকবে যা এই মডিউলগুলির সেটগুলি কভার করে। এই দলগুলির প্রত্যেকটিরই স্কোপের জন্য সিআই চক্র স্থাপন করা হত এবং তাদের নিজ নিজ চক্রটি পাস করার পরেই কোডটি মাস্টার রেপোতে ঠেলে দেওয়া হবে, যেখানে মাস্টার সিআই চক্র পরিচালিত হবে।

মাস্টার সিআই চক্র সম্ভবত এই দিকগুলিতে টিম স্তরের সিআই চক্র থেকে পৃথক হবে:

  • টিম স্তরের সিআই চক্রগুলিকে পুরো সংস্থার কোড তৈরি করতে হবে না, কেবল সেই মডিউলগুলির জন্য তারা দায়বদ্ধ এবং নির্ভরশীল মডিউলগুলি। যদি দুটি মডিউল থাকে যা সম্পূর্ণ স্বতন্ত্র এবং বিভিন্ন দলে থাকে তবে তারা অন্য দলের সিআই চক্রের অংশ হতে পারে না।
  • টিম স্তরের সিআই চক্রের মাস্টার সিআই চক্রের চেয়ে অনেক বেশি বিশদ স্বয়ংক্রিয় পরীক্ষা থাকতে পারে। মাস্টার সিআই চক্রের স্যানিটি চেক টেস্ট এবং রিগ্রেশন টেস্ট থাকবে যা মাস্টার সলিউশনের আকারের উপর নির্ভর করে প্রতিদিন বা এমনকি সাপ্তাহিক চালিত হবে, কারণ এই পরীক্ষাগুলি সম্পাদন করতে 24 ঘন্টারও বেশি সময় নিতে পারে।

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


7

@ ভ্লাদিমির_সটিক যা বলেছিলেন তা ছাড়াও, কিছু দলে (খনিতে ~ 150 বিকাশকারী রয়েছে), আমরা প্রতি 24 ঘন্টাের চেয়ে বেশি ঘন ঘন বিল্ডগুলি করি। যখনই কোন কমিট হয়, আমরা একটি 5 মিনিটের টাইমার শুরু করি। 5 মিনিট শেষ হওয়ার পরে, 5 মিনিটের ব্যবধানে ঘটে যাওয়া সমস্ত কমিটগুলি একত্রিত করে তৈরি করা হয়। বিল্ডটি সাধারণত একটি ইনক্রিমেন্টাল বিল্ড হয়। আমাদের পৃথক বিল্ডার রয়েছে যা প্রতিটি বিল্ডের জন্য ইউনিট পরীক্ষা চালায়। বিল্ডটি সমাপ্ত হওয়ার পরে, যদি বিল্ড চলাকালীন আরও কিছু কমিট থাকে (যা পরিবর্তিত হয়েছে তার উপর নির্ভর করে 1 থেকে 45 মিনিটের মধ্যে লাগে), কোনও বিচারাধীন পরিবর্তনগুলি নির্মিত হয়, এবং তেমন। আমাদের কাছে একটি রাত্রি (পরিষ্কার, পূর্ণ) বিল্ডও রয়েছে তবে প্রতিটি প্রতিশ্রুতি (মোটামুটিভাবে) যে বিল্ডগুলি ঘটে তা আমাদের কোনও পরীক্ষা ব্যর্থ হয় কিনা তা খুব দ্রুত আমাদের জানান।

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