উত্তর:
আমি ব্যবহার করি
[Abc]: Message.
অ্যাড, মোড (ইফআই), রেফ (অভিনেতা), ফিক্স, রিম (ওভ) এবং রিয়া (ধৈর্য) এর সাথে লগফাইলে উত্তোলন করা সহজ।
উদাহরণ:
Add: New function to rule the world.
Mod: Add women factor in Domination.ruleTheWorld().
Ref: Extract empathy stuff to an abstract class.
Fix: RUL-42 or #42 Starvation need to be initialised before Energy to avoid the nullpointer in People.
Rem: freeSpeech is not used anymore.
Rea: Removed old TODO and extra space in header.
আমার যদি কোনও রেখার বেশি থাকে তবে আমি প্রথমে এগুলি সর্বাধিক গুরুত্বপূর্ণ অনুসারে বাছাই করি।
Mod
এবং এর মধ্যে কিছু পার্থক্য ব্যাখ্যা করতে পারেন Ref
? কখনও কখনও আমি কেবল ছোট ফিক্সগুলি করছি যা এক ধরণের রিফ্যাক্টরিং।
Mod
কিছু যুক্ত করার বা আচরণের পরিবর্তন সম্পর্কিত, Ref
এমন অভ্যন্তরীণ জিনিসগুলি পরিবর্তন করার বিষয়ে যা কোনও ফাংশনালিটি যোগ করে না, এপিআই যোগ করে ইত্যাদি উদাহরণ: আমার যদি কোনও add(Object)
ফাংশন থাকে এবং আমি কোনও add(List<Object>)
ফাংশন বাস্তবায়ন করি তবে আমি তার সাথে মন্তব্য করব Mod
। পরে আমি অনুলিপি মুছে ফেলুন এবং সরাসরি ব্যবহার add(Object)
মধ্যে add(List<Object>)
তারপর আমি ব্যবহার করবে Ref
।
আমরা নিম্নলিখিত ব্যবহার:
[জিরায় টিকিটের আইডি]: [বার্তা: কী করা হয়েছিল] উদাহরণস্বরূপ - এবিসি -123: প্রতি অঞ্চল উপস্থাপনা কনফিগার করার ক্ষমতা যুক্ত করেছে।
এই ক্ষেত্রে যথাযথ সংহতকরণের সাথে আপনি আপনার ইস্যু ট্র্যাকারে পরিবর্তন / মুছে ফেলা / যুক্ত ফাইলগুলি পেতে সক্ষম হবেন। তবে, সচেতন থাকুন যে আপনার এবিসি -123: সম্পন্ন বা এবিসি -123: সম্ভব হলে ফিল্টারগুলি দিয়ে স্থির করা উচিত prevent
একটি সাধারণ নিয়ম রয়েছে, যা অনেকগুলি (সমস্ত না থাকলে) এসসিএম এবং এসসিএমগুলির সাথে কাজ করে এমন বেশিরভাগ সরঞ্জাম দ্বারা একটি কনভেনশন হয়:
প্রতিশ্রুতিবদ্ধ বার্তার প্রথম লাইন একটি সংক্ষিপ্তসার, অন্য বার্তায় বিশদ রয়েছে।
সুতরাং, বেশিরভাগ সরঞ্জাম কেবল প্রথম লাইনটি প্রদর্শন করে এবং পুরো বার্তাটি চাহিদা অনুযায়ী প্রদর্শন করে।
প্রতিশ্রুতিবদ্ধ বার্তার একটি সাধারণ অপব্যবহার হ'ল পরিবর্তনের বুলেট তালিকা (কেবলমাত্র প্রথম বুলেটটি প্রদর্শিত হবে)। আরেকটি অপব্যবহার হ'ল একটি লাইনে একটি দীর্ঘ বিবরণ বার্তা লিখছে।
সুতরাং, যদি প্রয়োগ করার জন্য কোনও জিনিস থাকে তবে আমি বলব এটি প্রথম লাইনের সর্বোচ্চ দৈর্ঘ্য।
ব্যক্তিগতভাবে আমি ব্যবহার করার মতো কোনও সাধারণ কমিট টেম্পলেট কখনও দেখিনি। মন্তব্যে সংক্ষিপ্তভাবে বলা উচিত যে কমিটগুলি কী সম্পর্কিত যা উদাহরণস্বরূপ কোন বৈশিষ্ট্য / বাগ ফিক্স বা কেন পরিবর্তন করা হয়েছিল তার একটি সংক্ষিপ্ত বিবৃতি।
যা প্রতিশ্রুতিবদ্ধ হয়েছিল সেগুলির তথ্য অন্তর্ভুক্ত করা উচিত নয়, এটি স্কেম সিস্টেম দ্বারা নির্ধারণ করা যেতে পারে। যেখানেই বাগ এবং বৈশিষ্ট্যগুলি ট্র্যাক করা হয় সেখানে আরও বাগ / বৈশিষ্ট্য সম্পর্কিত তথ্য অন্তর্ভুক্ত।
প্রতিশ্রুতি দেওয়ার পরে কোনও বাগ রিপোর্ট আপডেট করার সময় আমি বাগ রিপোর্টে থাকা মন্তব্যের পাশাপাশি কমিটের সংশোধনটিও বলা ভাল state এইভাবে আপনি বাগ রিপোর্টে প্রতিশ্রুতিবদ্ধ মন্তব্য থেকে আপনার পথ খুঁজে পেতে পারেন এবং বাগ প্রতিবেদনের প্রতিটি মন্তব্যের জন্য আপনি কী প্রতিশ্রুতিবদ্ধ তা সন্ধান করতে পারেন, তবে আপনি বাগ রিপোর্ট এবং প্রতিশ্রুতি বার্তা উভয়কেই রেখে নকল তথ্যটি বানাবেন না।
তারপরে কোনও ফাইলের পুনর্বিবেচনার ইতিহাস দেখার সময়, আপনার কাছে ইতিহাসের বর্ণনা দেওয়ার জন্য সুন্দর সংক্ষিপ্ত বার্তা রয়েছে তবে আরও বিশদটির জন্য বাগের প্রতিবেদনগুলি বা কার্য বিবরণের জন্য কোথায় সন্ধান করতে হবে তাও জানেন।
গিটে গিট হুক দিয়ে প্রায় যে কোনও কিছু প্রয়োগ করা সম্ভব । ধারণাগুলির জন্য .git / হুকের উদাহরণগুলি দেখুন।
বার্তাটি হিসাবে, খুব সাধারণ ক্ষেত্রে, আপনি যে সমস্যার সমাধান করছেন সে সম্পর্কে যথেষ্ট তথ্য অন্তর্ভুক্ত করতে চান এবং সমাধানটি নিজেই পরে এই প্রতিশ্রুতিটি সন্ধান করতে এবং সনাক্ত করতে সক্ষম হন। বেশিরভাগ ক্ষেত্রে সমস্যাটি একটি বাগ নম্বর উল্লেখ করা হবে (আপনার বাগ ট্র্যাকিং সিস্টেমের সাথে যথাযথ সংহতকরণের সাথে)। আপনার যদি অন্য সিস্টেমগুলি থাকে তবে আপনার প্রক্রিয়াটি (কোড পর্যালোচনা ট্র্যাকিং সিস্টেমের মতো) সাথে একীভূত হয়, উপযুক্ত বিটগুলিও অন্তর্ভুক্ত করুন:
Extracted checking foobar range from bar() into foo(min, max) to re-use
in yadda() and blah(). foo() returns true if foobar is in the
specified range and false otherwise.
BugID: 123456
ReviewedBy: mabuddy
AutomergeTo: none
তবে আপনি এটি সহজ রাখতে চান অন্যথায়, লোকেরা সিস্টেমটিকে প্রতারণা করার এবং একটি অকেজো প্রতিশ্রুতি বার্তা উত্পন্ন করার উপায় খুঁজে পাবে।
আমরা সমন্বিত একটি টেম্পলেট ব্যবহার করি
প্রথম দুটি বেশিরভাগ সময় বাদ দেওয়া হয় (মাঝে মাঝে তিনটিই) তাই এটি আসলে কোনও বড় বিষয় নয়।
আমি সাধারণত আমি ব্যবহার করি টিকিট ট্র্যাকিং সিস্টেমে সনাক্তকারী বা প্রথম লাইন হিসাবে একটি উচ্চ স্তরের ওভারভিউ রয়েছে। তারপরে আমার কাছে কমিটের নির্দিষ্ট পরিবর্তনের পংক্তি আইটেম "বুলেট" রয়েছে। সুতরাং আমি যেমন কিছু করতে পারে:
MyVideoGameProject-123 OR Inventory System Improvements
Made inventory GUI drap and drap
Added ability to have multiple bag slots to expand inventory capacity
এটি আমার কাছে সবচেয়ে ভাল কমিট ফর্ম্যাট। এটি প্রত্যক্ষ এবং বিন্দু। আমি অন্যভাবে এটি করার কারণটি হ'ল যদি আমি পরিবর্তন লগ তৈরি করতে চাই তবে আমি কেবল সমস্ত প্রতিশ্রুতি বার্তা নিতে পারি এবং এটি খুব সহজেই পরিবর্তনের লগে পার্স করতে পারি।
[টিকেটআইডি] [এবিসি] [বিষয় আইডি] [ডব্লিউআইপি] বার্তা, যেখানে:
উদাহরণস্বরূপ:
[# 452567] [যুক্ত করুন] [মেনু_ইটেম] নতুন আইটেম - গেস্টবুক
[# 452363] [ফিক্স] [ব্যানার_টপ] [ডব্লিউআইপি] 1024x300 এখন ব্যবহার করা যেতে পারে
[# 452363] [ফিক্স] [ব্যানার_টপ] 500x200 এখন ব্যবহার করা যেতে পারে
[ # 452713] [স্মৃতি] [পৃষ্ঠা] বাম মাঝের বিজ্ঞাপন