কেন আমি একটি প্রতিশ্রুতি বার্তা লিখতে হবে?


18

কেন আমি একটি প্রতিশ্রুতি বার্তা লিখতে হবে? আমি চাই না এবং আমি মনে করি প্রতিটি সময় এটি নির্বোধ।

আমি ব্যবহার করি এমন একটি জিইউআই ফ্রন্ট্যান্ড যা আপনাকে নামহীন করে এটি করতে বাধ্য করে। আমি অন্যান্য কমান্ড লাইনে ভিসিএস ব্যবহার করে থাকলেও প্রতিবার এটি করা শুনি।

যদি আমি দিনের বেশ কয়েকবার প্রতিশ্রুতিবদ্ধ এবং কোনও বৈশিষ্ট্য না শেষ করেছি তবে আমি কী লিখছি? আমি অনেকগুলি প্রতিশ্রুতি দেওয়ার পরে কেবল কোনও বার্তা লিখি এবং আমার মনে হয় এটি একটি মিনি ট্যাগের জন্য বা যখন আমি প্রকৃত ট্যাগটি করি তখন time

আমি ঠিক আছি নাকি আমি কিছু মিস করছি? এছাড়াও আমি একটি বিতরণ সিস্টেম ব্যবহার করছি


1
বিরক্ত করবেন না, মন্তব্য লাইনে কেবল "ব্লাহ" বলুন। যতক্ষণ আপনি অন্য কারও সাথে কোডটি ভাগ না করেন এবং যতক্ষণ না অন্য কারও পক্ষে এটি কাজ করবে না যতক্ষণ না আপনার কখনই কোডটি রোলব্যাক করার প্রয়োজন হবে না এবং যতক্ষণ না আপনি কোনও একক কোড ভুল করেন না এবং ... এক মিনিট অপেক্ষা করুন, আপনি আবার সংস্করণ নিয়ন্ত্রণ কেন ব্যবহার করছেন?
মাইকেল ডুরান্ট

উত্তর:


24

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

আপনি যদি গিট ব্যবহার করছেন তবে এটি আমি স্মার্ট ওয়ার্কফ্লো বলব:

  1. কমিট হিসাবে প্রায়ই হিসাবে আপনি চান । সেখানে যে কোনও পুরানো দ্রুত ম্যাসেজ লিখুন। কেউ তা আর দেখবে না।
  2. বলার পরে, 10 টি কমিট করে আপনি যে বৈশিষ্ট্যটিতে কাজ করেছিলেন তা শেষ করেছেন। এখন পরীক্ষা লিখুন এবং সেই পরীক্ষাগুলি কমিট করুন। বা আপনি যা চান। আপনি যদি টিডিডি পছন্দ করেন, প্রথমে পরীক্ষা লিখুন, আমি যত্ন করি না, গিটও করি না।
  3. git rebase -iপ্রথম নোংরা 'থেকে কমিট জুড়েছে এবং, স্কোয়াশ করা সম্পাদনা, বাদ এবং অন্যথায় মধ্যে আপনার সাম্প্রতিক ইতিহাস পরিষ্কারের দ্বারা আপনার স্থানীয় ইতিহাস ঠিক চমৎকার বার্তা যৌক্তিক, পরিষ্কার করে
  4. পরিষ্কার করার পরে, কাউকে আপনার কাছ থেকে টানতে বলুন।
  5. পাখলান পুনরাবৃত্তি.

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

এছাড়াও খেয়াল করুন যে 1 এবং 3 ধাপের মধ্যে যে কোনও জায়গায়, আপনি git pushল্যাপটপ এইচডিডি মারা গেলে বিনামূল্যে ব্যাকআপ পেতে সার্ভারে নিজের ব্যক্তিগত রেপো মিরর থেকে আপনার পরিবর্তনগুলি করতে পারেন।


ভাল উত্তর, আমি এটি পছন্দ করি। আমি রিবেস ব্যবহার করতে কিছুটা ভয় পেয়েছি। এটি ভুল হয়ে যাচ্ছে এবং কীভাবে এটি পুনরুদ্ধার করবেন সে সম্পর্কে একটি নিবন্ধ এখানে দেওয়া হয়েছে

@ এসিড, আপনি যদি নিজের ব্যক্তিগত পরিবর্তনগুলি প্রত্যাখ্যান করেন তবে কোনও বিরোধ নেই। এছাড়াও, গিটে কিছু হারাতে আপনাকে কঠোর চেষ্টা করতে হবে।
অ্যালেক্স বুদোভস্কি

4
আমার কর্মপ্রবাহ, গিট শিলা
নাজগোব

1
@ বরিস: কারণ তিনি স্পষ্টতই গিট সম্পর্কে কথা বলছেন যা স্পষ্টতই

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

55

কারণ যখন কিছু দুর্বল রক্ষণাবেক্ষণকারী একটি বাগ শিকার করে দেখেন যে এটি পুনরায় যোগ করা হয়েছিল। xyz, সে জানতে চাইবে কি রেভ। xyz করার কথা ছিল।


38
ঠিক আছে তবে সে সবেমাত্র আমি যাচাই করেছিলাম স্প্যাগেটির 5000 টি লাইন পড়তে পারে, JEESH !!! কিছু লোক কেবল অলস!
এডওয়ার্ড স্ট্রেঞ্জ

9
কারণ যখন দরিদ্র স্তন্যপায়ী আপনার পরে আসে (3 বছরের মধ্যে) এবং ইতিহাসের দিকে তাকিয়ে যায় ... ডব্লিউটিএফ .. ডাব্লুটিএফ .. ডাব্লুটিএফ, তখন কি ঘটছে সে সম্পর্কে তার কিছুটা ধারণা থাকবে। আপনি সহজেই "রুটিন চেকইন, বৈশিষ্ট্য এক্স, অসম্পূর্ণ" এর মতো মন্তব্য যুক্ত করতে পারেন।
দ্রুত_ফেব্রুয়ারি

3
@ অ্যাসিডজম্বি ২৪: কারণ প্রতিটি প্রতিশ্রুতিবদ্ধ হওয়া উচিত এটি কী ছিল - এমনকি যদি এটি "সংশোধন টাইপ ইন ...." হয়, তবে পুনর্বিবেচনার ইতিহাসের কোনও অর্থ নেই, যদি না আপনি সংশোধনগুলি কী তা জানেন।
Orbling

11
@ চটজলদি_ এখন, দরিদ্র স্তন্যপায়ী এমনকি আপনি নিজেই হতে পারেন। দুর্ভাগ্যক্রমে এটি সম্পূর্ণরূপে প্রশংসা করার জন্য নিজেকে অবশ্যই অভিজ্ঞতা অর্জন করা উচিত

2
@ এসিডজম্বি - আপনি কেন অপূর্ণ পরিবর্তনগুলি পরীক্ষা করছেন ??
এডওয়ার্ড স্ট্রেঞ্জ

35

আপনি আপনার উত্স কোড মন্তব্য, তাই না?

আপনি খুব ভাল মন্তব্য, ঐ যে বলে লিখতে কেন কোড হিসেবে শুধুমাত্র বলতে কিভাবে ?

প্রতিশ্রুতিবদ্ধ বার্তাটি এমন একটি মন্তব্য, এবং তাই এটি অত্যন্ত গুরুত্বপূর্ণ এবং আপনি এটি সঠিকভাবে পাওয়ার জন্য যত বেশি চিন্তাভাবনা করেছেন, সফ্টওয়্যারটির ভবিষ্যতের রক্ষণাবেক্ষণকারীদের পক্ষে এটি তত বেশি দরকারী।

যে কোনও সক্রিয় সফ্টওয়্যারটির জন্য, এই নির্দিষ্ট মন্তব্যটি শেষের মতো কিছুতে দেখানো হবে

gitk - সমস্ত নমুনা

( http://longair.net/blog/2009/04/25/a-few-git-tips/ এ পাওয়া গেছে )। এই সফ্টওয়্যারটি কখন এবং কী করেছে সেগুলিতে কারা কাজ করেছে তা পাখিদের চোখের দেখার অনুমতি দেয় ।

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


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

2
@ এসিডজম্বি, যদি আপনি কোনও মন্তব্যে ওয়ারেন্ট দেওয়ার পক্ষে পর্যাপ্ত পরিবর্তন না করেন তবে আপনি কেন প্রতিশ্রুতি দেন? দয়া করে ব্যাখ্যা করুন.

2
@ থোর: কারণ সংস্করণ নিয়ন্ত্রণ আপনার কোডকে ক্ষতির বিরুদ্ধে সুরক্ষিত করে এবং এমনকি অর্ধ-সম্পন্ন কোডও সুরক্ষিত করা উচিত।
বেন ভয়েগ্ট

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

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

15

যদি প্রতিশ্রুতিবদ্ধ বার্তাটি আপনার কাছে বোকা মনে হয় তবে মনে হচ্ছে আপনি ভুল প্রতিশ্রুতি ব্যবহার করছেন।

কমিটগুলি সঙ্গত কারণেই করা উচিত - আপনি যে বৈশিষ্ট্যটিতে কাজ করছেন তার জন্য সেগুলি আপনি ভাঙা টাস্কগুলির সাথে সম্পর্কিত হওয়া উচিত। এই কাজগুলি আনুষ্ঠানিক হোক বা কেবল আপনার মনেই হোক, প্রতিটি পরিবর্তন আপনি যে কমিট করে তা কমবেশি একটি কাজ সম্পন্ন করা উচিত এবং তাই কোনওভাবে কার্যকরী হওয়া উচিত।

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

  • আরও ভাল এনক্যাপসুলেশনের জন্য ব্যবহারকারীর বর্গটি রিফেক্টর করে
  • তৈরি করা হয়েছে এপিআই স্টাবস যাতে নিয়ন্ত্রণকারী শ্রেণিতে ইন্টারফেসগুলি ব্যবহার করা যায়
  • ডাটাবেস ক্লাসটিকে একটি বিমূর্ত শ্রেণিতে রূপান্তরিত করে যাতে পরীক্ষার ক্ষেত্রে মক ডাটাবেস ব্যবহার করা যায়

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


1
+1, শুনে মনে হচ্ছে তিনি খুব ঘন ঘন বা খারাপ স্টপিং পয়েন্টগুলিতে প্রতিশ্রুতিবদ্ধ। যদি তিনি কিছু পরীক্ষামূলক পরিবর্তনের জন্য কেবল একটি ভাল ব্যাক-আপ পয়েন্ট চান, তবে তিনি সূচক, একটি অস্থায়ী শাখা ব্যবহার করতে পারেন, নতুন তৈরির পরিবর্তে পূর্ববর্তী কমিটগুলি সংশোধন করতে পারেন, বা এমনকি তার সম্পাদনায় পূর্বাবস্থায় বাফার ব্যবহার করতে পারেন।
কার্ল বিলেফেল্ট

1
@ কার্ল: আইআইআরসি লিনাস তার গিট গুগল আলাপে বলেছে যে প্রতিদিন গড়ে comm টি কমিট করা হয়। এখন, আমি জানি না যে কতটুকু বিবেচিত হবে, তবে এই প্রকল্পে এখনই আমি প্রতিশ্রুতিবদ্ধ হয়ে কাজ করেছি যখন আমি কিছুটা প্রতিফলন কাজ করেছি (আমি সঠিক ডেটা লুপ করব, আমি এটি দিয়ে কিছুই করব না), ইন্টারফেস তৈরি করার পরে কিন্তু সিরিয়ালাইজেশন কাজ করার আগে। 2 ঘন্টা আগে আমার ইন্টারফেস থাকলেও আমি এখন সিরিয়ালাইজেশন নিয়ে কাজ করছি। আমি প্রতিশ্রুতিবদ্ধ করব এবং একবার 'প্রতিবিম্বের বুনিয়াদি' বলব যা কার্যকর হয় তবে প্রথম তিনটিতে আমি যখন কোনও বৈশিষ্ট্য যখন 'এক্স' কাজ করে তখন সহজেই দেখতে পাই কেন আমি কোনও মন্তব্য করব leave

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

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

@ কার্ল: বিটিডাব্লু ইনডেক্স কী? আমি জানি গিটের কাছে স্ট্যাশ রয়েছে তবে আমি সে সম্পর্কে আপনার কথা বলব না। এটার কাজ কি?

12

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

এগুলি থেকে কোনও বড় চুক্তি করবেন না। সৎ হও:

  • "এক্স এক্স বৈশিষ্ট্য হ্যান্ডেল করতে স্পেসিয়াল ইনডেক্স সত্তা, দাওস এবং ইউআই সম্পাদনা করেছেন"
  • "বৈশিষ্ট্য অনুরোধ # 1234 এবং বাগ # 5678 এর জন্য বর্ধিত চেক ইন"
  • "আমি শেষ বিল্ডটি ভেঙে দিয়েছি These এই ফাইলগুলি আমি মিস করেছি" "

এটি সংক্ষিপ্ত এবং "বড় ছবি" রাখুন। যদি সম্ভব হয় তবে আপনার বৈশিষ্ট্য / বাগ সিস্টেমে একটি সমস্যা নম্বর দেখুন to কিছু সংস্করণ নিয়ন্ত্রণ UI গুলি এই ধরণের জিনিসটির জন্য একটি ক্ষেত্র অন্তর্ভুক্ত করে।


2
এটি সংক্ষিপ্ত রাখার ধারণার জন্য +1। সংক্ষিপ্ত এবং সহজ এবং যথেষ্ট ভাল পুরোপুরি ঠিক আছে।
দ্রুত_ফেব্রুয়ারি

1
আইএমএইচও আরও উন্নত দিকনির্দেশনা হ'ল সাধারণ "যতটা সম্ভব সংক্ষিপ্ত, যতক্ষণ সম্ভব" রেসিপি; যেহেতু কখনও কখনও প্রয়োজনীয় তথ্য ত্যাগ ছাড়াই এটি সংক্ষিপ্ত রাখা সহজ হয় না
এইচভিআর

11

এটি ডাব্লুটিএফ / মিনিট সংখ্যা হ্রাস করে)

এখানে চিত্র বর্ণনা লিখুন

যা একটি সুখী দলে অনুবাদ করে (যিনি আপনাকে ঘৃণা করেন না) এবং কম ব্যয়ে সম্ভাব্যতর উন্নত দলের আউটপুট


4
আপনি কেন এটি সত্য তা ব্যাখ্যা করে যদি আমি এটিকে ভোট দিতে চাই ।
সিঙ্গেলাইজেশন ইলিমিনেশন

@ টোকেনম্যাকগুই - দুঃখিত, আমি অনুসরণ করছি না
রুক

1
কীভাবে এক্সপ্রেটিভ প্রতিশ্রুতিবদ্ধ বার্তাগুলি ডাব্লুটিএফ / মিনিট হ্রাস করে (তারা অবশ্যই তা করে)
এককনেগেশন দূরীকরণ

@ টোকেনম্যাকগুয়ে - আমি ভেবেছিলাম এটি সুস্পষ্ট।
রুক

9

সুতরাং আপনার বাকি দলটি ডাব্লুটিএফ জানে যে আপনি প্রকল্পের ট্রিতে পরিবর্তনগুলি পরীক্ষা করে দেখছেন।


7
আমি আমার প্রকল্পগুলির জন্য প্রতিশ্রুতিবদ্ধ বার্তা যুক্ত করি, যখন আমি কেবলমাত্র ডেভেলপার! কারণ আমি যখন এই জিনিসগুলি দেখার জন্য 2 বছরে ফিরে আসি তখন আমি ডাব্লুটিএফএফটি জানতে চাই যে আমি সেই সময়টি করছিলাম। আমি পুরোপুরিভাবে জানি যে 99% সময় এটি তাকাবে না। এই সময়ের 1% সময়টি আমার 2 সপ্তাহের যন্ত্রণা সাশ্রয় করবে এবং আমি মনে করি যে 10 সেকেন্ডের প্রতিশ্রুতি প্রবেশের দামটি আমি যে দীর্ঘমেয়াদী লাভ পাব তার মূল্য।
দ্রুত_ফেব্রুয়ারি

@ চটজলদি_ এখন, যন্ত্রণাও কি? আপনার কোডটি হল যে খারাপ?

1
@ চটজলদি_ এখন: আমেন এক বা দুই বছরের ব্যবধানে, আমার কাছ থেকে প্রচুর কোড বেরিয়ে আসে, প্রতি শেষ বিটটি মাস কয়েক পরে করার কথা ছিল, godশ্বর কেবল জানেন। Godশ্বর, এবং আমার সংশোধন ইতিহাস।
অরব্লিং

হ্যাঁ. আমিও একমত। আমি এটিকে অভিজ্ঞতা == নম্রতা বলে মনে করি।
মাইকেল ডুরান্ট

8

কারণ আপনি যদি ভদ্র প্রতিশ্রুতিবদ্ধ বার্তাগুলি প্রবেশের অনুশীলন না করেন তবে আপনি আমার কলিগের মতো শেষ হয়ে যাবে যিনি বার্তাগুলি প্রবেশ করেন

no changes

অথবা

testing

এক শতাধিক পরিবর্তিত ফাইল নিয়ে কমিট করার জন্য (এখানে কোন মজা নেই!)।

আপনি যদি এই জাতীয় বিকাশকারী হন, আপনি কেবল বিশ্বের বার্তাগুলির কাছে বোকা দেখবেন, আপনি কেবল কোনও বার্তা প্রবেশ করাই যত নির্বোধ মনে করেন না।


1
প্রতিশ্রুতি দেওয়ার আগে পিয়ার পর্যালোচনার জন্য নিখুঁত প্রার্থীর মতো মনে হচ্ছে, যদি আমি কখনও শুনি।

2
ওহ মানুষ, আমি এই ধরণের লোকের সাথে কাজ করেছি। আমাকে পাগল করে দিল.
সেভেনসিট

4

পরিবর্তনগুলি অর্থবহ না হলে আপনি কেন প্রতিশ্রুতি দেন?

কেবল একটি পরিবর্তন আছে যা একটি অর্থ আছে। উদাহরণস্বরূপ আমি অন্য সপ্তাহে একটি বড় রিফ্যাক্টরিং করেছি যা আমাকে প্রায় 3 দিন সময় নিয়েছিল। সেই সময়ে আমার প্রচুর কমিট হবে। কিছু পরিবর্তে ছোট পরিবর্তন ('নতুন দায়িত্ব প্রতিবিম্বিত করার জন্য দশম শ্রেণীর নামকরণ' বা 'কিউ'তে' স্থানান্তরিত পদ্ধতি '(' ক্লাস কিউ'তে স্থানান্তরিত করা হয়েছে) 'এবং অন্যটি সত্যই বড় ছিল। যখন আমি কোনও বৈশিষ্ট্য / রিফ্যাক্টরিংয়ের সাথে সম্পন্ন করি তখন আমি পরীক্ষা করে দেখি যে কিছু কমিটগুলি স্কোয়াশ করা যেতে পারে (কমপক্ষে গিট এটি সমর্থন করে, অন্যান্য সরঞ্জামগুলি সম্পর্কে জানে না) তবে সাধারণত আমি সেগুলি পরে রাখি কারণ এটি পরে সহায়তা করে।

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


3

কোনও পরিস্থিতি কল্পনা করুন যখন আপনি কিছু পরিবর্তন করে আপনার সিস্টেমটি ভেঙে ফেলেন এবং দল দ্বারা বেশ কয়েকটি প্রতিশ্রুতি দেওয়ার পরে এটি উপলব্ধি করুন। পরিবর্তনটি কী ছিল তা আপনি মনে করতে পারেন না তবে আপনি মনে রাখবেন যে আপনি যখন বৈশিষ্ট্য এক্স বাড়িয়েছিলেন বা মডিউল ওয়াই থেকে কোনও ফাইল সরিয়েছিলেন তখন কিছু ভুল হতে পারে

তবে দুর্ভাগ্যক্রমে আপনি X বা Y পরিবর্তন করার সময় সংশোধন নম্বরটি আপনাকে জানায় না So সুতরাং এটি আপনার পছন্দটি হয় হয় শেষ এন দিবসে প্রতিশ্রুতিবদ্ধ সমস্ত কোডগুলি পড়ুন বা আপনি লিখেছিলেন বিস্তারিত কমিট বার্তা পড়ুন (কোডের চেয়ে অনেক বেশি পাঠযোগ্য)।

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

সুতরাং প্রতিবার প্রতিশ্রুতিবদ্ধ অর্থপূর্ণ প্রতিশ্রুতি বার্তা লেখার চেষ্টা করুন যা আপনাকে এবং রক্ষণাবেক্ষণকারীকেও সহায়তা করতে পারে।


দিনের শেষে, প্রতি অন্য দিনের পরিবর্তে বা কোনও বৈশিষ্ট্য শেষ করার পরে কেন আমি প্রতিশ্রুতি দেওয়ার সময় এটি করব?

1
আপনি কেন এটি প্রায়শই প্রতিশ্রুতিবদ্ধ করেন, যদি এটির "প্রাকৃতিক" কারণ না থাকে?

আমি যখনই কিছু উল্লেখযোগ্য পরিবর্তন করি আমি প্রতিশ্রুতিবদ্ধ তাই এটি সংগ্রহস্থলে প্রতিফলিত হতে পারে এবং অন্যান্য বিকাশকারীরা সেই পরিবর্তনগুলি পরীক্ষা করতে পারে। তবে আপনি যে উত্তরটি দিয়েছিলেন তা কার দ্বারা এবং কখন কী করা হয় তাতে পাখি নজর রাখতে সহায়তা করে।
জিজি 01

@ অ্যাসিডজম্বি 24 আচ্ছা, যদি না আপনার সত্যিই না হয় অর্ধেক সমাপ্ত জিনিস প্রতিশ্রুতিবদ্ধ করবেন না। এবং অন্য লোকেরা যখন আপনি অসুস্থ অবস্থায় একদিন ডেকে আনেন তখন আপনি কী করছেন / কীভাবে কাজ করছেন তা দেখতে পাবে এবং কিছুই কাজ করে না। অথবা তাই আপনি যখন 2 দিনের সভাতে বসে থাকতে পারেন তখন আপনি কোথায় গিয়েছিলেন তা মনে রাখতে পারেন। অথবা তাই আপনি আরও সহজেই চিহ্নিত করুন যা কোন সংশোধনটি একটি বিল্ডকে ভেঙে দিয়েছে এবং ভিন্নটির দিকে তাকান।
টি

@ থরবজর্ন: কেন আমি আবার পরিবর্তন করতে চাই না এমন পরিবর্তন করব?

3

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

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

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


3

তুমি কিছু মিস করছি সেখানে আবশ্যক একটি অন্যথায় কমিট সম্পাদন জন্য আপনি যে কারণে এরকম হবে না হও।

মন্তব্যে আপনাকে যা করতে হবে তা হ'ল কেবল তা থাকলেও কারণগুলিকে শব্দে যুক্ত করা wip: adding new state objects


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

2

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

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

আমি যে বিষয়টি তুলে ধরার চেষ্টা করছি সেটি হ'ল ভাল প্রতিশ্রুতিবদ্ধ বার্তাগুলি আপনাকে (এবং আপনার পরে যারা আসে কেউ) কী ঘটেছে, কী ঘটছে, কোথায় চলছে এবং কেন সর্বোপরি কেন তা নির্ধারণ করতে সহায়তা করে।


2

এক মিনিটের জন্য এটি যৌক্তিকভাবে চিন্তা করুন। আপনি যখন প্রতিশ্রুতি দিচ্ছেন তার অর্থ কিছু করা হয়েছিল। আপনি যদি কোনও বার্তা না রেখে অন্য লোকেরা কীভাবে জানবে যে কী করা হয়েছিল?


আমার অবিশ্বাস্যভাবে সুস্পষ্ট কোডটির এক নজরে এবং তারা তাত্ক্ষণিকভাবে জানবে যা এটি করে এবং যা আশ্চর্যজনক পরীক্ষাগুলি এটি 100% কেটে যায়। দুঃখিত, আমি আজ রাতে একটি হাস্যকর মেজাজে আছি [তাই আমি মজা করছি];)
মাইকেল ডুরান্ট

1

আপনি যদি নিজের প্রতিশ্রুতি সম্পর্কে মন্তব্য না করেন তবে উত্সের পরিবর্তনে মন্তব্য করতে প্ররোচিত হতে পারেন। সময়মতো, এটি উত্সকে বিশৃঙ্খলা করতে পারে।


2
আমি এটি করতে প্রলোভিত হই না

1

প্রতিশ্রুতিবদ্ধ বার্তাগুলি সেই চেক-ইন-এ কী চলছে তা জানার একটি দ্রুত উপায় এবং যখন আপনার দলটির অন্যান্য ডেভসরা জানতে চান যে কোডের কোন দিকটি পরিবর্তন হয়েছে (কোন কারণে সংশোধন করে)।

সম্পর্কিত নোটে, আমি প্রতিশ্রুতি বার্তায় বাগ ট্র্যাকার কেস নম্বর (আমি আশা করি আপনি এটি ব্যবহার করছেন) নির্দিষ্ট করার পরামর্শ দেব, যাতে ভবিষ্যতে জিনিসগুলি সহজেই ট্র্যাক করা সহায়ক হবে।


1

যাতে এই কোডটির রক্ষণাবেক্ষণকারী 1 বছর পরে জানেন যে সেই নৃশংস কোডটির জন্য কাকে শিকার করতে হবে। :)


blameভিসিএসের বৈশিষ্ট্যটি এটাই ।
পিটার টেলর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.