একটি ফাইলের তুলনায় অন্যটির তুলনায় ডিফগুলি আরও জটিল হতে পারে। সম্পূর্ণ ডিরেক্টরি শ্রেণিবিন্যাসের তুলনা করতে পারে। আমি জিসিসিতে একটি বাগ ঠিক করতে চাই যে উদাহরণটি বিবেচনা করুন। আমার পরিবর্তনগুলি 4 বা 5 ফাইলে একটি লাইন বা দুটি যুক্ত করে এবং সেইগুলি এবং অন্যান্য ফাইলগুলিতে মুষ্টিমেয় লাইনগুলি মুছে দেয়। আমি যদি এই পরিবর্তনগুলি কারও সাথে যোগাযোগ করতে চাই তবে জিসিসিতে অন্তর্ভুক্তির জন্য আমার বিকল্পগুলি
- পুরো উত্স ট্রি অনুলিপি করুন
- পরিবর্তিত ফাইলগুলি কেবল অনুলিপি করুন
- আমার করা পরিবর্তনগুলি সরবরাহ করুন Supply
পুরো উত্স ট্রি অনুলিপি করা কোনও অর্থবোধ করে না, তবে অন্য দুটি বিকল্প সম্পর্কে কী বলা যায় যা আপনার প্রশ্নের মূল অংশে আসে। এখন বিবেচনা করুন যে অন্য কেউও আমার মতো একই ফাইলটিতে কাজ করেছে এবং আমরা দুজনেই কাউকে আমাদের পরিবর্তনগুলি দিয়েছি। এই ব্যক্তি কীভাবে জানবেন যে আমরা কী করেছি এবং যদি পরিবর্তনগুলি সামঞ্জস্যপূর্ণ হয় (ফাইলের বিভিন্ন অংশ) বা বিরোধ (ফাইলের একই লাইন)? তিনি তাদের বিভিন্ন হবে! পার্থক্য তাকে বলতে পারে কীভাবে ফাইলগুলি একে অপরের থেকে এবং অপরিবর্তিত উত্স ফাইল থেকে পৃথক। ডিফটি যদি প্রয়োজন হয় তবে এটি কেবল প্রথমে আলাদা করে পাঠাতে আরও বোধগম্য হয়। একটি ডিফের মধ্যেও একাধিক ফাইলের পরিবর্তন থাকতে পারে, সুতরাং আমি মোট 9 টি ফাইল সম্পাদনা করার সময়, এই পরিবর্তনগুলি বর্ণনা করার জন্য আমি একটি একক ডিফ ফাইল সরবরাহ করতে পারি।
ইতিহাস সরবরাহ করতে ডিফগুলিও ব্যবহার করা যেতে পারে। যদি তিন মাস আগে কোনও পরিবর্তন ঘটে তবে আমি কেবল এটিই আবিষ্কার করেছি। বাগটি চালু হওয়ার সময় আমি যদি সংকীর্ণ হতে পারি এবং এটি একটি নির্দিষ্ট পরিবর্তনে পৃথক করতে পারি, তবে আমি এই পরিবর্তনটি "পূর্বাবস্থায় ফেরাতে" বা পরিবর্তনটি ফিরিয়ে নিতে পারি। আমি কেবল খুব সহজেই ফাইলগুলি অনুলিপি করতে পারলে এটি আমি খুব সহজেই করতে পারি।
এটি উত্স সংস্করণ নিয়ন্ত্রণের সাথে সমস্ত সম্পর্কযুক্ত যেখানে প্রোগ্রামগুলি ফাইল তৈরির ইতিহাসটিকে আজ অবধি তৈরি হওয়ার সময় থেকে ভিন্নতার একটি সিরিজ হিসাবে রেকর্ড করতে পারে। পার্থক্য ইতিহাস সরবরাহ করে (আমি ফাইলটি কোনও নির্দিষ্ট দিনের মতোই পুনরায় তৈরি করতে পারি), আমি দেখতে পাচ্ছি যে কোনও কিছু ভাঙার জন্য কাকে দোষ দেওয়া উচিত (ডিফের মালিকের মালিক আছে) এবং আমি সহজেই নির্দিষ্ট প্রবাহের মাধ্যমে প্রবাহ প্রকল্পগুলিতে পরিবর্তনগুলি জমা দিতে পারি ( আমি যখন অনেকগুলি তৈরি করি তখন তারা কেবলমাত্র একটি পরিবর্তনতে আগ্রহী)।
সংক্ষেপে, হ্যাঁ, এর cp
চেয়ে সহজ diff
এবং patch
তবে ফাইলগুলি কীভাবে পরিবর্তন হয় তা ট্র্যাক করা গুরুত্বপূর্ণ এমন পরিস্থিতিতে তার উপযোগিতা diff
এবং patch
এর চেয়ে বেশি cp
।