চেকইন এবং চেকআউটের মধ্যে পার্থক্য কী?


14

সফটওয়্যার কনফিগারেশন ম্যানেজমেন্টে নতুন যে শিক্ষার্থীদের এসসিএম ক্লাস শেখানো হয় তখন এমনটি ঘটে যে একটি প্রশ্ন " What's the difference between checkin and checkout?" এর মতো আসে ।

এবং এর ভিন্নতা হ'ল এই জাতীয় ছাত্ররা এসসিএম ধারণাগুলি সম্পর্কে বিভ্রান্ত হয় (তারা এগুলিকে অন্যত্র হিসাবে বোঝে)।

সুতরাং এই জাতীয় শ্রোতাদের কাছে এই গুরুত্বপূর্ণ এসসিএম ধারণাটি ব্যাখ্যা করতে আপনি কোন ধরণের রূপক ব্যবহার করতে পারেন?


চেকআউট = লক; চেকিন = আনলক; আপনি যে শাখায় ক্রিয়াকলাপটি সম্পাদন করছেন তাতে প্রশ্নে অবজেক্টটি সম্পাদনা করার জন্য আপনি একচেটিয়া লক গ্রহণ করেন।
জিরি ক্লাউদা

উত্তর:


8

কারও কাছে কিছু ব্যাখ্যা করার জন্য, এটি ইতিমধ্যে যার সাথে পরিচিত (আশাবাদী) এমন কিছু সাথে এটির তুলনা করার চেষ্টা করুন।

তাই আমি কেবল এই জাতীয় প্রশ্নের উত্তর দিই:

এটিকে থাকার জায়গাতে (হোটেল, রিসর্ট ইত্যাদি) পৌঁছানোর কথা ভাবেন:

  • আপনি যে প্রথম কাজটি করবেন (আপনি যখন পৌঁছবেন) তা হল checkin
  • খুব গত জিনিস আপনি কি করতে (যখন আপনি ছেড়ে চলে যান) হয় checkout

আপনি যখন সফ্টওয়্যার উপাদানগুলিতে পরিবর্তনগুলি প্রয়োগ করতে চান তখন একটি অনুরূপ এসসিএম ধারণাটি প্রযোজ্য হয় ... এটি ব্যতীত অন্যভাবে প্রয়োগ করা হয় :

  • আপনি যে প্রথম কাজটি করেন (যখন আপনি শুরু করেন) তা হ'ল checkout(বা এটিকে ধার করার মতো ভাবেন)।
  • আপনি যে সর্বশেষ কাজটি করেন (শেষ করার পরে) তা হ'ল checkin(বা এটিকে ফেরত দেওয়ার মতো ভাবেন)।

দ্রষ্টব্য : এটি কেন্দ্রিয়ায়িত সিস্টেমে প্রযোজ্য (যেমন মেইনফ্রেম পরিবেশে ব্যবহৃত ...)। মতো সিস্টেমে " checkout" ধারণার সম্পূর্ণ আলাদা অর্থ হয় (যা আইএমও এই কারণেই এই দুটি সিস্টেমে উভয় ধারণা সম্পর্কেই কোনও বিভ্রান্তি নেই)।


হোটেল রুমের চেয়ে কোডটি কি লাইব্রেরির বইয়ের মতো বেশি?
টবি স্পিড 10

এটি একটি বরং নিষ্পাপ, সাধারণ উত্তর। আমি সোর্স কন্ট্রোল সিস্টেমগুলির ইন্টার্নালগুলিতে এক দশক ধরে কাজ করেছি তাই আমি আপনার প্রশ্নের আরও কিছুটা গভীর-উত্তর যুক্ত করেছি।
জিরি ক্লাউদা

6

এটি লক্ষ করা গুরুত্বপূর্ণ যে এসসিএম সিস্টেমের ধরণের উপর নির্ভর করে "চেকইন" এবং "চেকআউট" পদগুলির আলাদা অর্থ রয়েছে।

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

গিটের মতো বিতরণকারী সিস্টেমে একটি "চেকআউট" কমান্ড থাকে তবে এর অর্থ সম্পূর্ণ আলাদা something git checkoutস্থানীয় সংগ্রহস্থলের সাথে কাজ করার সময় শাখাগুলির মধ্যে স্যুইচ করতে ব্যবহৃত হয়।


বিতরণ সিস্টেম সম্পর্কে ভাল পয়েন্ট ডেভ! আসলে এ কারণেই আমি নিজে প্রথমে (যখন আমি প্রথম জিআইটি সম্পর্কে জানলাম) ভীষণ বিভ্রান্ত হয়েছিল। আপনার উত্তরটি অবৈধ না করার জন্য (আমার প্রশ্নটি অভিযোজিত করে), আমি নিজের উত্তরটি কিছুটা পরিষ্কার করার জন্য পরিমার্জন করেছি।
Pierre.Vriens

আমার স্পষ্ট করা উচিত: গিট চেকআউটটি সংগ্রহস্থল থেকে জিনিসগুলি পরীক্ষা করতে ব্যবহৃত হয়। এটি একটি শাখা, বা একটি একক ফাইল হতে পারে।
ডেভ সোয়ারস্কি

4

কেন্দ্রীভূত সিস্টেমগুলির জন্য, এটি প্রযুক্তিগত লাইব্রেরির মতো ভাবেন। (এই কাল্পনিক লাইব্রেরি কীভাবে কাজ করে তা কল্পনার এক প্রসার হতে পারে ...)

আপনি যদি কোনও নথির লেখক হন তবে আপনি checkoutগ্রন্থাগারটি অনুলিপি করতে পারেন, পরিবর্তন করতে পারেন, এটি check it back inবিশ্বের জন্য লাইব্রেরিতে ফিরিয়ে দিতে পারেন।

লাইব্রেরির ডিজিটাল অনুলিপি থাকলে, এবং আমি checkoutএকটি নথি, অন্য কেউ নথিও রেখেছি, এটি একটি সমস্যা হয়ে উঠতে পারে checks out, আমরা উভয়ই পরিবর্তন করি, একটি বিরোধ (সংহত সংঘাত) হতে পারে যা সমাধান করা কঠিন হতে পারে। তখন এর জন্য প্রাথমিক "ফিক্স" হ'ল একচেটিয়া checkoutকার্যকারিতা ...


অবশ্যই বড় বড় প্রকল্পের জন্য একটি সমালোচনামূলক একত্রীকরণ দ্বন্দ্ব ইস্যু সম্ভাবনা কমে যাবে (মানুষের সিস্টেমের বিভিন্ন অংশ কাজ হবে না) তাই checkout/ checkinপ্রায় যতটা প্রয়োজন হয় না। এবং যেহেতু ডিজাইনের মাধ্যমে বিতরণ করা সিস্টেমে কিছুটা ভাল একত্রীকরণ কার্যকারিতা এবং অন্যান্য অনেকগুলি সুবিধার পাশাপাশি, গিট এবং অন্যান্য ডিভিসিএসে এই ধারণাটি আসলেই নেই doesn't


এটি দেখার অন্য একটি উপায়। যদিও আমার অভিজ্ঞতায় আমি মনে করি না যে "বিবাদ" এবং "মার্জিং" এর মতো জিনিস যুক্ত করা ভাল ধারণা (যদি তারা চেকআউট এবং চেকইন দিয়ে এখনও স্বাচ্ছন্দ্য বোধ না করে)।
Pierre.Vriens

ভাল, আমি এটিকে যুক্ত করেছিলাম কারণ চেকআউট / চেকইন এর প্রধান কারণ যা আমি ভাবতে পারি। এবং মনে করেন যে ধারণাটি উপলব্ধি করা অতিরিক্ত কঠিন যদি আপনি না জানেন যে সেই ধারণার জন্য আসলে কী দরকারী।
থাইমাইন

2

সঙ্গে এস সি এম সংগ্রহস্থলের প্রধান বিষয় হিসেবে তারপর '

  • চেকআউট পরিবর্তন হচ্ছে আউট (আপনার স্থানীয় পরিশ্রমী ডিরেক্টরির মধ্যে) স্থানীয় অথবা দূরবর্তী সংগ্রহস্থল থেকে।
  • চেকইন নির্বাপণ করা হয় পরিবর্তন ব্যাক মধ্যে (আপনার স্থানীয় পরিশ্রমী ডিরেক্টরি থেকে) স্থানীয় অথবা দূরবর্তী সংগ্রহস্থল।

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

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

1
  • চেকআউট হ'ল একটি সংগ্রহস্থলের অবজেক্টের একটি শাখা সংশোধন করার জন্য একচেটিয়া লক।
  • চেকইন একচেটিয়া লকের একটি প্রকাশ।

ব্রাঞ্চিংয়ের ক্ষুদ্রতম ইউনিট কী তার উপর নির্ভর করে দুটি ধরণের উত্স নিয়ন্ত্রণ ব্যবস্থা রয়েছে।

1) প্রতি সংগ্রহ শাখা (সিভিএস, এসভিএন, জিআইটি, পারফোর্স, ... ইত্যাদি)

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

2) প্রতি বস্তু শাখা

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


আরে জিরি, তোমার উত্তরের জন্য মুরসি। আপনি উল্লেখ করেছেন যে 2 ধরণের জন্য আমি সম্মত হবে। তবে মেইনফ্রেম ওয়ার্ল্ডের এসসিএম সরঞ্জামগুলিতে (আমার অভিজ্ঞতা থেকেই উদ্ভূত হয়েছিল) কেউ "লকিং" বিবেচনায় নেয় না ... আপনি কি নিজের উত্তরে তৃতীয় ধরণের যোগ করার উপায় সম্পর্কে ভাবতে পারেন?
Pierre.Vriens

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

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

উপমাটি চালিয়ে যাওয়ার জন্য, লাইব্রেরির একটি আলাদা শাখায়, একই বইটি বিভিন্ন পরিবর্তনের সাথে বা সম্পূর্ণরূপে অবিকৃত বা একেবারে নাও থাকতে পারে। অন্য কেউ একই সময়ে সেখানে পরীক্ষা করতে পারেন (অর্থাত্ শাখা প্রতি চেকআউট)। এখন মূল লেখক ২ য় সংস্করণে কাজ করেন, তাই কথা বলতে একটি মাস্টার শাখা। তিনি একাধিক শাখার নোট পড়তে পারেন, সেগুলিকে একত্রিত করতে, মাস্টার শাখাটি চেকআউট করতে এবং দ্বিতীয় সংস্করণটি চেক ইন করতে পারেন। গ্রন্থাগারের প্রতিটি শাখা একটি দ্বিতীয় সংস্করণ কিনে তাদের অনুলিপি রিফ্রেশ করবে। তারা প্রথম ত্যাগ করতে পারে বা মার্জিন থেকে নতুন সংস্করণে এখনও দরকারী নোটগুলি অনুলিপি করতে পারে।
জিরি ক্লাউদা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.