Git ও GitHub — যে ১০টি Best Practice সবাই মানা উচিত
শুধু git commit করলেই হয় না — জানতে হয় কীভাবে meaningful commit message লিখতে হয়, branch strategy কী, pull request কীভাবে করতে হয়।
Git ব্যবহার করতে পারা আর Git ভালোভাবে ব্যবহার করা — এই দুটোর মধ্যে অনেক পার্থক্য। Professional developer হতে হলে Git-এর best practices জানা অপরিহার্য। এখানে ১০টি গুরুত্বপূর্ণ practice তুলে ধরা হলো।
১. Meaningful Commit Message লিখুন
"fix bug" বা "update code" — এই ধরনের commit message কখনো লিখবেন না। পরিষ্কার এবং descriptive message লিখুন। Conventional Commits format অনুসরণ করুন: feat: add user authentication, fix: resolve login redirect loop, docs: update README।
২. ছোট, Focused Commit করুন
একটি commit-এ একটি কাজ করুন। "add login, fix header, update database schema" — এভাবে একটি commit-এ সব করা উচিত নয়। ছোট commit করলে code review সহজ হয় এবং bug ধরা সহজ হয়।
৩. Feature Branch ব্যবহার করুন
সরাসরি main বা master branch-এ কখনো commit করবেন না। নতুন feature-এর জন্য আলাদা branch তৈরি করুন: git checkout -b feature/user-login। কাজ শেষে Pull Request দিন।
৪. .gitignore সেটআপ করুন
node_modules, .env, build files — এগুলো কখনো repository-তে push করবেন না। .gitignore ফাইলে এগুলো যোগ করুন। gitignore.io ওয়েবসাইট থেকে প্রজেক্ট অনুযায়ী .gitignore template পাওয়া যায়।
৫. Pull Request অবশ্যই Review করুন
Team work-এ merge করার আগে কাউকে দিয়ে code review করান। এতে bugs ধরা পড়ে এবং code quality বাড়ে।
৬. Rebase vs Merge জানুন
Clean history চাইলে rebase ব্যবহার করুন। Safety চাইলে merge করুন। যে কোনো একটি strategy-তে stick করুন।
৭. Tags ব্যবহার করুন Release-এর জন্য
প্রতিটি stable release-এ tag দিন: git tag -a v1.0.0 -m "First stable release"। এটি version tracking সহজ করে।
৮. Sensitive Data কখনো Commit করবেন না
API keys, passwords, private tokens — এগুলো .env ফাইলে রাখুন এবং .gitignore-এ যোগ করুন। ভুলে commit হয়ে গেলে সাথে সাথে সেই credentials পরিবর্তন করুন।
৯. Regular Pull করুন
Team project-এ নিয়মিত remote থেকে pull করুন যাতে conflicts কম হয়।
১০. README ভালো করে লিখুন
প্রতিটি project-এ একটি ভালো README থাকা উচিত — project কী করে, কীভাবে run করতে হয়, dependencies কী কী।