Menu
1.6 প্রথম পদক্ষেপ – প্রথমবারের মত গিট সেটআপ
প্রথমবারের মত গিট সেটআপ
এখন যেহেতু আপনার কম্পিউটারে গিট আছে, আপনার প্রথম কাজই হবে গিটের এনভায়রনমেন্টকে আপনার মত করে সাজিয়ে নেয়া। এই কাজ যে কোন কম্পিউটারে একবার করলেই হবে। কোন আপডেটের কারনে এর কোন পরিবর্তন হয় না। অবশ্য পরবর্তীতে যেকোন সময়ে একই কমান্ড চালিয়ে এগুলো পরিবর্তন করে নিতে পারবেন, যদি প্রয়োজন হয়।
git config নামে একটা টুল গিটের সঙ্গে থাকে যা দিয়ে আপনি গিটের সবধরনের কনফিগারেশন যেমন গিট কিভাবে সবকিছু নিয়ন্ত্রন করবে বা এটি দেখতে কেমন হবে ইত্যাদি বিভিন্ন ধরনের কনফিগারেশন ভেরিয়েবল আপনি বলে দিতে পারেন বা দেখতে পারেন। এগুলো তিনটি ভিন্ন জায়গায় সংরক্ষণ করা যেতে পারে। যেমনঃ
- [path]/etc/gitconfig ফাইলঃ এই ফাইলটিতে যে কনফিগারেশন আছে, সেগুলো কম্পিউটারে যত জন ব্যাবহারকারী আছেন, তাদের এবং তাদের যত রিপোজিটোরি আছে সবকটির জন্য প্রযোজ্য। আপনি যদি git config কমান্ড চালানোর সময় –system অপশনটি উল্লেখ করেন তাহলে এই ফাইল থেকে ভ্যালু তুলে আনে এবং এখানেই নতুন ভ্যালু লিখে। যেহেতু এটি একটি সিস্টেম কনফিগারেশন ফাইল, এই ফাইলে কোন কিছু পরিবর্তন করতে চাইলে আপনার সুপারইউজার বা এ্যাডমিনিস্ট্রেটিভ প্রিভিলিজ থাকতে হবে।
- ~/.gitconfig বা ~/.config/git/config ফাইলঃ এখানে যে কনফিগারেশনগুলো আছে সেগুলো কেবলমাত্র ব্যাবহারকারীর নিজস্ব কনফিগারেশন। অন্যান্য ইউজাররা এটি দ্বারা প্রভাবিত নয়। –global অপশন ব্যাবহার করে আপনি গিটকে এই ফাইল থেকে পড়তে বা লিখতে নির্দেশ দিতে পারেন এবং এই অপশনটি আপনার সিস্টেমে নিজের সকল রিপোজিটোরির জন্য প্রযোজ্য।
- যে রিপোজিটোরিতে আপনি এই মূরহুর্তে কাজ করছেন তার ডিরেক্টরিতে থাকে config ফাইল (.git/config) : এর সমস্ত কনফিগারশন কেবলমাত্র ওই রিপোজিটোরির জন্যই প্রযোজ্য, যেখানে আপনি এই মূহুর্তে কাজ কারছেন। –local অপশন ব্যবহার করে গিটকে এই ফাইল থেকে কনফিগারেশন ভ্যালু পড়তে বা লিখতে নির্দেশ দিতে পারেন। এই অপশনটা ডিফল্ট হিসাবে থাকে। স্বাভাবিকভাবেই, –local অপশনটি ঠিকঠাক মত কাজ করবে যদি আপনি গিটের কোন একটা রিপোজিটোরিতে থাকেন।
কনফিগারশনে প্রতি লেভেলের ভ্যালু তার আগের লেভেলের ভ্যালুকে প্রতিস্থাপন (override) করে। যেমন .git/config ফাইলে কোন ভ্যালু পরিবর্তন হলে, তা [path]/etc/gitconfig ফাইলের একই কনফিগারেশনকে ওভাররাইড করবে।
উইন্ডোজ সিস্টেমে, $HOME ডিরেক্টরিতে (বেশিরভাগ ক্ষেত্রেই এটা C:\Users\$USER) গিট .gitconfig ফাইলের খোঁজ করে। এটা আবার [path]/etc/gitconfig ফাইলও খোঁজে, যদিও এটা MSys root এর সাথে সম্পর্কিত, যেটা আবার পাওয়া যাবে যেখানে আপনি গিট ইনস্টল করেছেন সেখানে। আপনি যদি উইন্ডোজে Git 2.x অথবা তার পরের কোন ভার্সন ব্যাবহার করে থাকেন, আপনি দেখবেন C:\Documents and Settings\All Users\Application Data\Git\config এখানে একটা সিস্টেম লেভেল কনফিগ ফাইল আছে উইন্ডোজ এক্সপির ক্ষেত্রে। এই ফাইলটাই উইন্ডোজ ভিস্তা বা তার পরের উইন্ডোজগুলোতে C:\ProgramData\Git\config এখানে থাকে। এই কনফিগ ফাইলে কোন পরিবর্তন করতে চাইলে, এডমিন হিসাবে git config -f কমান্ড চালানো ছাড়া অন্য কোন উপায় নেই।
নীচের কমান্ডটি ব্যাবহার করে গিটের সব ধরনের সেটিং এবং এগুলো কোথায় আছে, তা জানতে পারবেন।
উইন্ডোজ সিস্টেমে, $HOME ডিরেক্টরিতে (বেশিরভাগ ক্ষেত্রেই এটা C:\Users\$USER) গিট .gitconfig ফাইলের খোঁজ করে। এটা আবার [path]/etc/gitconfig ফাইলও খোঁজে, যদিও এটা MSys root এর সাথে সম্পর্কিত, যেটা আবার পাওয়া যাবে যেখানে আপনি গিট ইনস্টল করেছেন সেখানে। আপনি যদি উইন্ডোজে Git 2.x অথবা তার পরের কোন ভার্সন ব্যাবহার করে থাকেন, আপনি দেখবেন C:\Documents and Settings\All Users\Application Data\Git\config এখানে একটা সিস্টেম লেভেল কনফিগ ফাইল আছে উইন্ডোজ এক্সপির ক্ষেত্রে। এই ফাইলটাই উইন্ডোজ ভিস্তা বা তার পরের উইন্ডোজগুলোতে C:\ProgramData\Git\config এখানে থাকে। এই কনফিগ ফাইলে কোন পরিবর্তন করতে চাইলে, এডমিন হিসাবে git config -f
নীচের কমান্ডটি ব্যাবহার করে গিটের সব ধরনের সেটিং এবং এগুলো কোথায় আছে, তা জানতে পারবেন।
$ git config --list --show-origin
আপনার আইডিন্টিটি
গিট ইনস্টল করার পর প্রথমেই আপনার যে কাজটা করে ফেলা দরকার তা হলো আপনার ইউজার নেম এবং ইমেইল আইডি টা সেট করে ফেলা। গিট প্রতি কমিটেই এই তথ্যগুলো ব্যাবহার করে বিধায় এই কাজ শুরুতেই করে ফেলাটা বেশ জরুরী। এই তথ্যগুলো immutable বা অপরিবর্তনীয় ব্যাবস্থায় প্রতিটা কমিটের একটা অবিচ্ছেদ্য এবং অন্তঃর্নিহিত অংশ হিসাবে থাকে।
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
আবারো বলি, এটা আপনাকে একবারই করতে হবে যদি আপনি –global অপশন ব্যাবহার করেন। কারন, এর পর থেকে আপনি যা কিছু করেন না কেন, গিট সবসময় একই তথ্য ব্যাবহার করবে। আপনি যদি নির্দিষ্ট প্রজেক্টের জন্য ভিন্ন নাম বা ইমেল ঠিকানা দিয়ে এটিকে ওভাররাইড করতে চান, আপনি সেই প্রজেক্টের ভিতরে কমান্ডটি –global অপশন ছাড়া চালাতে পারেন।
অনেক GUI টুল আছে, যা আপনাকে প্রথমবার গিট চালানোর সময় এই ধরনের কাজে সাহায্য করবে।
অনেক GUI টুল আছে, যা আপনাকে প্রথমবার গিট চালানোর সময় এই ধরনের কাজে সাহায্য করবে।
নোট
এই বইটা গিটের ২.৮.০ ভার্সনের উপর ভিত্তি করে লেখা হয়েছে। যেহেতু গিট পুরানো ভার্সনের কম্প্যাটিবিলিটি (compatibility) রক্ষায় বেশ চমৎকার, তাই যেকোন নতুন ভার্সন-ই সঠিকভাবে কাজ করা উচিত। আমরা যে কমান্ডগুলি ব্যবহার করি তার বেশিরভাগই গিটের অতি পুরনো ভার্সনেও কাজ করার কথা, তবুও তাদের মধ্যে কিছু কিছু ভিন্ন আচরণ করতেও পারে।
$ sudo dnf install git-all