মূল বিষয়বস্তুতে যান
লেখার কৌশল গাইড

ঔপন্যাসিকদের জন্য ভার্সন হিস্ট্রি

Updated November 10, 2026 · ৬ মিনিটের পাঠ

শেষ হওয়ার আগে উপন্যাস বহুবার রূপ বদলায়, আর বেশিরভাগ লেখক সেই রূপগুলোর হিসাব রাখেন "final", "final-v2" আর "actual-final" নামের ফাইলের ফোল্ডারে। প্রবৃত্তিটা ঠিকই। যে বইয়ের আগের সংস্করণের নির্ভরযোগ্য ইতিহাস আছে, তা নির্ভয়ে সংশোধন করা যায়: সাবপ্লট কাটুন, রহস্যোদ্ঘাটন সরান, শেষটা নতুন করে লিখুন, তবু আগে কী ছিল তা পড়তে ফিরে যেতে পারবেন। এই গাইডে বলা হয়েছে দীর্ঘ কথাসাহিত্যে ভার্সন হিস্ট্রি কেন গুরুত্বপূর্ণ, কোন মুহূর্তগুলোতে চেকপয়েন্ট ব্যবহার করবেন, এবং ব্রাঞ্চিং কোথায় মানায়।

Key takeaways

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

ভার্সন হিস্ট্রি হলো কোনো লেখা আগে কেমন ছিল তার নথি। প্রোগ্রামাররা কয়েক দশক ধরে এর ওপর ভরসা করে আসছেন; অথচ বেশিরভাগ ঔপন্যাসিক এখনও এটি ছাড়াই কাজ করেন, কিংবা কাজ চালান chapter-7-final, chapter-7-final-v2 আর chapter-7-ACTUAL-final নামের একগাদা ফাইলের একটি ফোল্ডার নিয়ে। ওই ফোল্ডার আসলে সঠিক ধারণারই একটা প্রচেষ্টা। একটি বই শেষ হওয়ার পথে বহুবার আকার বদলায়, আর যে লেখক আগের আকারগুলো দেখতে এবং সেখানে ফিরে যেতে পারেন, তিনি এমন লেখকের চেয়ে বেশি সাহসের সঙ্গে এবং বেশি নির্ভুলভাবে সংশোধন করেন যিনি তা পারেন না। এই নির্দেশিকায় আলোচনা করা হয়েছে কেন তা-ই ঘটে, বাস্তবে চেকপয়েন্ট নিয়ে কীভাবে কাজ করতে হয়, এবং শাখা-ভাবনার (ব্রাঞ্চিং) জায়গা কোথায়।

কেন একটি উপন্যাসের নিজের একটি স্মৃতি দরকার

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

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

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

বড় সংশোধনের পথে যে ভয় বাধা হয়ে দাঁড়ায়

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

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

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

গুরুত্বপূর্ণ মুহূর্তগুলোতে চেকপয়েন্ট

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

চেকপয়েন্টের যোগ্য মুহূর্তগুলো হলো সেগুলো, যেগুলোর পরে এমন সিদ্ধান্ত আসে যার জন্য পরে আফসোস হতে পারে:

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

প্রতিটি চেকপয়েন্টের নাম দিন যা ঘটতে চলেছে তার ভিত্তিতে, তারিখের ভিত্তিতে নয় - তারিখ তো নথিই রেখে দেয়। "লিসবন উপকাহিনি কাটার আগে" তিন মাস পরেও আপনার কাছে অর্থবহ হবে। "শনিবার" হবে না।

একটি অধ্যায় আগে কেমন ছিল তা পড়া

ভার্সন হিস্ট্রির দ্বিতীয় ব্যবহারটি আরও নিঃশব্দ, এবং দৈনন্দিন কাজে আরও বেশি চলে: পিছিয়ে গিয়ে পড়া।

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

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

শাখা-ভাবনার (ব্রাঞ্চিং) জায়গা কোথায়

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

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

ব্রাঞ্চিং শৃঙ্খলাও দাবি করে। প্রতিটি শাখা আপনার বইয়ের একটি অংশের দ্বিতীয় সংস্করণ, আর একই গল্পের দুটি সংস্করণ দ্রুত পরস্পরের থেকে সরে যায়। শাখাগুলোকে স্বল্পস্থায়ী রাখুন, একটি প্রশ্নে কেন্দ্রীভূত রাখুন, সিদ্ধান্ত নিন, এবং উত্তরটি মূল লেখায় মিশিয়ে দিন।

এআই যখন প্রক্রিয়ার মধ্যে

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

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

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

Questions

Frequently asked

ঔপন্যাসিকদের কি ভার্সন কন্ট্রোল দরকার?
প্রোগ্রামারের অর্থে, কমান্ড লাইন ও মার্জ সহ, নয়; তবে এর পেছনের ধারণা থেকে তারা উপকৃত হন: বইয়ের আগের সংস্করণগুলোর তারিখযুক্ত রেকর্ড, যা খুলে তুলনা করা যায়। এটি বড় কাঠামোগত সংশোধন নিরাপদে চেষ্টা করতে দেয় এবং সংশোধনে বাদ পড়া অংশ ফিরে পেতে সাহায্য করে।
চেকপয়েন্ট আর স্বয়ংক্রিয় ভার্সন হিস্ট্রির পার্থক্য কী?
স্বয়ংক্রিয় হিস্ট্রি পরিবর্তনগুলো ঘটার সঙ্গে সঙ্গে, প্রায়ই নিরবচ্ছিন্নভাবে, রেকর্ড করে। চেকপয়েন্ট হলো আপনার বেছে নেওয়া মুহূর্তে বই বা পরিবর্তিত অধ্যায়গুলোর ইচ্ছাকৃত, নামযুক্ত সেভ — সাধারণত এমন সিদ্ধান্তের ঠিক আগে যা নিয়ে পরে আফসোস হতে পারে। চেকপয়েন্ট দিয়েই আপনি পথ চেনেন, কারণ প্রতিটি এমন একটি অবস্থা চিহ্নিত করে যা আপনি রাখতে চেয়েছিলেন।
আমার উপন্যাসের সংস্করণ কখন সেভ করা উচিত?
যেকোনো কাঠামোগত পরিবর্তনের আগে (অধ্যায় সরানো, মেশানো বা কাটা, শেষ নতুন করে লেখা), বিটা রিডার বা সম্পাদককে খসড়া পাঠানোর আগে, প্রতিটি পূর্ণ খসড়ার শেষে, এবং সফটওয়্যার বা AI-কে একসঙ্গে অনেক লেখা নতুন করে লিখতে দেওয়ার আগে।
বর্তমান খসড়া না হারিয়ে বিকল্প প্লট কীভাবে চেষ্টা করব?
বর্তমান অবস্থার একটি চেকপয়েন্ট সেভ করুন, তারপর বিকল্পটি লিখে দুটি তুলনা করুন। আপনার টুল ব্রাঞ্চিং সমর্থন করলে ব্রাঞ্চ একই কাজ করে, দুটি ভার্সন পাশাপাশি এগোয়। যেভাবেই হোক, পরীক্ষাটি একটি প্রশ্নে কেন্দ্রীভূত রাখুন এবং সিদ্ধান্ত নিন। Novelmint-এ চ্যাপ্টারের Branch from here সেখান থেকে শেষ পর্যন্ত পরিকল্পনা কপি করে, আর Make this Main ব্রাঞ্চ জিতলে সেটি বসিয়ে দেয় এবং পুরোনো ভার্সন ব্রাঞ্চ হিসেবে রাখে।
Novelmint কি ভার্সন হিস্ট্রি রাখে?
হ্যাঁ। Timeline হেডারে Save checkpoint আপনার বদলানো প্রতিটি চ্যাপ্টারের নতুন ভার্সন সেভ করে, আর চ্যাপ্টারের Versions বোতাম যেকোনো আগের ভার্সন তার বিট, কাঠামো ও গদ্যসহ খোলে। অন্য দিক পরখ করতে আপনি কোনো চ্যাপ্টার থেকে বই ব্রাঞ্চ করতে পারেন, Minty-র শেষ দফার সম্পাদনা এক ক্লিকে বাতিল করতে পারেন, আর তাকে জিজ্ঞাসা করতে পারেন কোন বদলগুলো আপনার আর কোনগুলো AI-র।

What this page does not claim

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

বড় সংশোধনটা করুন। আগের সংস্করণ তবু থেকে যাবে।

কার্ড লাগে না। তুলনা করতে চাইতে পারেন এমন যেকোনো পরিবর্তনের আগে একটি চেকপয়েন্ট সেভ করুন।