যখন এর মাহাত্ম্য আমি বুঝলাম ততক্ষণে আমি আমার বোকামি ধরে ফেলেছি
বিশ্ববিদ্যালয় জীবনের পুরোটা সময় আমি কোড গুলো স্টোর করেছি একটু সাধারণভাবে , যখন আমার কোন কিছু সেভ করে রাখা দরকার হতো তখন আমি সবগুলো কোড জিপ করে রাখতাম এবং নামের শেষে ডেট দিয়ে রাখতাম যেন আমি বুঝতে পারি যে কোন কোডটি আমি লাস্ট কবে আপডেট করেছি। আর যখন শেয়ার করার দরকার হতো তখন তো গুগোল ড্রাইভ ছিলই, আমি সেগুলো আপলোড করে দিতাম এবং যাকে দরকার তাকে শেয়ার করতাম। বিশ্ববিদ্যালয় জীবনে এমন অনেকে অনেক কিছুই তো করেছি।
বিশ্ববিদ্যালয় জীবন এভাবে পার হলেও চাকরিজীবন তো আর পার হবে না। একদম শুরুতেই শুনলাম git
নামে কি যেন একটা আছে যেটাকে ভার্শন কন্ট্রোল সিস্টেম, না কি জানি একটা বলে, যাই হোক শুরু করতে হবে। শুরু করার প্রথম দিনেই বুঝে গেলাম যে গিট হলো একটা কাজের জিনিস। এটা ব্যবহার করলে জিপও করতে হবে না, আবার কখন আপডেট করতেছি সেইটাও জানতে কষ্ট করতে হবে না। কষ্ট পেলাম তখন যখন দেখলাম কিছু কমান্ড লিখে কাজগুলো করতে হবে ।
বিশ্ববিদ্যালয় জীবনে “জীবন মানেই উইন্ডোজ” ছিল। লিনাক্স হাল্কা পাতলা ব্যবহার করতাম সেটাও লিনাক্স কি তা জানার জন্য আর বন্ধুমহলে “আমি লিনাক্স ব্যবহার করতে পারি” আর “আমার পিসি ডুয়েল বুট করা” এই টাইপের ভাব নেওয়ার জন্য । apt
দিয়ে সফটওয়্যার ইন্সটল করা, আর সেটআপ দেওয়ার পর অভ্র ইন্সটল করা পর্যন্তই আমার দৌড় ছিল । লিনাক্স ( উবুন্টু ) ব্যবহার করতে হবে এরপর গিট এ যেন মরার উপর খাড়ার ঘা।
কিন্তু যখন গিট সেটআপ দেওয়া শুরু করলাম দেখলাম বাহ খুব সহজ তো । এক লাইন কপি করে টার্মিনালে পেস্ট করে দিলেই নাকি কেল্লাফতে ।
sudo apt install git
ব্যাপারটা খুব মজার লাগলো । যে ফোল্ডারে কাজ করছি সেটা টার্মিনালে ওপেন করে লিখতে হবে git init
। এরপর শুধু git add *
আর git commit
। এটি করলেই আর এভাবে ডেট দিয়ে রাখতে হবে না, জিপ করতে হবে না । কোন ঝামেলা নেই। এইতো টেক, এইতো মজা। তবে আর একটু কাজ করতে হবে যদি আমরা পুরো বিষয়টি ভালভাবে বোঝার চেষ্টা করি সে ক্ষেত্রে আর সেটা হলো পুশ । এটা কঠিন না তবে এর জন্য github
এ একটা অ্যাকাউন্ট লাগবে ।
একাউন্ট খোলাও সহজ ইমেইল দাও , পাসওয়ার্ড দাও, ভেরিফাই করো ।শেষ আর কিছুই করতে হবে না । এখন তো আরও সহজ , গুগল বাটনে কয়েকটা ক্লিক দিলেই হয় ।
এরপর একটা রিপোজিটরি খুলতে হবে এটাও 2-3 ক্লিক এর কাজ এরপর যে লিংকটা থাকবে সেটা অ্যাড করতে হবে ফোল্ডারে , এটাকে নাকি অরিজিন বলে । এরপরে শুধু git push
আর git push
পুশ করলে কোড গুলো চলে যাবে সার্ভারে এবং আমরা গিটহাব থেকে হিস্টরি দেখতে পাবো ।
সবকিছু ভালোই চলছিলো কিন্তু দেখা গেল কোডের পাশাপাশি অনেক হাবিজাবি ফাইলও চলে যায় এতে। তখন মনে হলো যে, ফোল্ডার করাটাই ভালো। তাতে ইচ্ছামত ফাইল বাদ দেওয়া যায় । এরপর মনে হোল গিট এ কি এটা নেই? থাকার কথা । সবাই কি হাবিজাবি ফাইল আপলোড দেয়? এমন তো হওয়ার কথা না । তাহলে কিভাবে আটকাবো?
কিভাবে আটকানো যায় একটু খুঁজে দেখলাম, গল মামাকে জিজ্ঞাস করলাম। মামা বলল যে gitignore
আছে । খুব সহজ । একটা ফাইল খুলে এরমধ্যে ফাইল বা ফোল্ডারে লোকেশন দিয়ে দিলেই সেই ফাইল বা ফোল্ডার গুলো আর github এ আপলোড হয় না।
ব্যাপারটা মজার। সব থেকে মজার ব্যাপার টা তো সেদিনই ঘটলো যেদিন আমার মনে হল আমি কোন কোন ফাইল গুলো আপলোড করতে চাই না, সেগুলো আমি কাউকে জানাবো না । তাই অনেক ভেবে চিন্তে
gitignore
ফাইলের মধ্যে আমিgitignore
ফাইলের লোকেশন দিয়ে রাখলাম । যখন এর মাহাত্ম্য আমি বুঝলাম ততক্ষণে আমি আমার বোকামি ধরে ফেলেছি ।