সত্যিকার অর্থে বিআইজি সোর্স কোড কমিট করার শব্দটি কী? [বন্ধ]


37

কখনও কখনও যখন আমরা কোনও সফ্টওয়্যারটির প্রতিশ্রুতিবদ্ধ ইতিহাসটি পরীক্ষা করি তখন আমরা দেখতে পাই যে কয়েকটি কমিট রয়েছে যা সত্যই বিগ - তারা শত শত পরিবর্তিত সোর্স কোড লাইন (ডেল্টা) সহ 10 বা 20 ফাইল পরিবর্তন করতে পারে। আমি মনে করি যে এরকম বিগ কমিটের জন্য একটি সাধারণত ব্যবহৃত শব্দ আছে তবে আমি সেই শব্দটি ঠিক কী তা মনে করতে পারি না। আমাকে কি কেউ সাহায্য করতে পারবেন? প্রোগ্রামাররা সাধারণত এমন বিগ এবং জায়ান্ট কমিটকে বোঝাতে কী শব্দটি ব্যবহার করেন?

বিটিডাব্লু, একসাথে একটি ভাল অনুশীলন অনেকগুলি প্রতিশ্রুতিবদ্ধ?

আপডেট: অনুপ্রেরণামূলক আলোচনার জন্য আপনাকে বলছি ধন্যবাদ! তবে আমি মনে করি যে "কোড বোমা" সেই শব্দটি যা আমি সন্ধান করছি।


15
"ব্রেকিং কমিট"। :-)
পিটার কে।

3
ব্যক্তিগতভাবে আমি সেই cluster f...
আকারটিকে

1
আমার বস সব সময় এই কাজ করে। চেক-ইন মন্তব্য: "সবকিছু; ও)"
মেটালমাইকস্টার

প্রশ্নের জন্য +1 কারণ আমি এখনও অবধি প্রতিটি উত্তর পছন্দ করি এবং আমার ক্যারিয়ারে কমপক্ষে একবার অন্তত একটি পাপ করার মধ্য দিয়ে ভোগ করেছি এবং অন্যরা তা না করতে চাই =)
প্যাট্রিক হিউজেস

আমি বলতে পারি কোড হিমবাহ!
ব্রায়ান

উত্তর:


50

(1) বেন কলিন্স-সুসমান : "..." কোড বোমা "is অর্থ্যাৎ, কেউ যখন কোনও বিশাল নূতন বৈশিষ্ট্য সহ একটি ওপেন সোর্স প্রকল্প দেখায় যা লিখতে কয়েক মাস সময় নেয়? কার কাছে পর্যালোচনা করার সময় আছে? কয়েক হাজার লাইনের কোড? ... "

(২) ড্যান ফাবুলিচ : "কোড বোমা, বা: দ্য নিউ বিবি উইথ বিগ আইডিয়া ... একটি কোড বোমা এমন প্যাচ যা এত বড় যে কেউ এটি পর্যালোচনা করতে পারে না।"

(৩) গুগল গ্রীষ্মের সামার কোড: গাইডলাইনস : "তাড়াতাড়ি কমিট করুন, প্রায়শই কমিট করুন ... দয়া করে সারা দিন কাজ করবেন না এবং তারপরে সবকিছুকে একটি কোড বোম্বায় ফেলে দিন Instead পরিবর্তে, প্রতিশ্রুতি কেবলমাত্র একটি কাজে স্বাবলম্বিত হওয়া উচিত যা লগ বার্তায় সংক্ষিপ্ত করা উচিত ""

(4) জেফ আতউড : "কোড বোমা ... নিয়ম # 30: অন্ধকার করবেন না ... ...


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

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

এটি ইতিহাসের পুনর্লিখন /
প্রতারণার

@ জর্জিও - এর জন্য যা শাখা রয়েছে।
ব্রায়ান

@ ব্রায়ান: হ্যাঁ, এটি একটি সম্ভাবনা। আপনি যখন শাখায় বিকাশকৃত কার্যকারিতাটি মার্জ করেন তখন এই ক্ষেত্রে আপনার প্রধান শাখায় একটি বড় প্রতিশ্রুতি থাকে।
জর্জিও

38

আমরা সম্ভবত এটি একটি খারাপ প্রতিশ্রুতি বলি । :)

খারাপ অনুশীলন

এবং হ্যাঁ, এটি সাধারণত খারাপ অভ্যাস হিসাবে বিবেচিত হবে , কারণ এর নেতিবাচক প্রভাব রয়েছে:

  • এটি পর্যালোচনা করা কঠিন করে তোলে ,
  • কমিটের মূল অভিপ্রায়টি সহজে এবং দ্রুত উপলব্ধি করা শক্ত করে তোলে ,
  • এটি তৈরি কঠিন কিভাবে এটা স্পষ্টভাবে ফিক্স কোড প্রভাব দেখতে বা একটি বিষয় মোকাবেলার ,
  • কমিটের আকারটি অন্যান্য সম্ভাব্য সম্পর্কহীন পরিবর্তনের শব্দের কারণে না তা জানা মুশকিল করে তোলে (যেমন ছোট ক্লিনআপ বা অন্যান্য কার্য)।

গ্রহণযোগ্য কেস

যাইহোক, আপনার এমন কেস থাকতে পারে যেখানে বড় কমিটগুলি পুরোপুরি গ্রহণযোগ্য । এই ক্ষেত্রে:

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

সুতরাং, যখনই সম্ভব, "সার্জিক্যাল স্ট্রাইক" পছন্দ করুন - কমিটের ধরণের টাইপ করুন (এবং আপনার ইস্যু ট্র্যাকারের টাস্ক আইডিতে তাদের লিঙ্ক করুন!)। আপনার যদি কোনও বৈধ কারণ থাকে তবে এগিয়ে যান।


তা বাদে, আমি আসলে জানি না এবং মনে করি না যে আমি কখনও একটি বড় কমিটের জন্য একটি বিশেষ নাম শুনেছি। একটি দানব-প্রতিশ্রুতি? একটি চর্বি-প্রতিশ্রুতি?

আপডেট: ডেভিড ক্যারির "কোড-বোমা" শব্দটি ব্যবহার করে উল্লেখযোগ্য আইটি অভিনেতাদের লিঙ্কের উত্তরের লিঙ্কগুলি (সবচেয়ে গুরুত্বপূর্ণভাবে, কলিন্স-সুসমান, সাবভার্সনের মূল স্রষ্টা )। এর মতো (যদিও এখনও আমি বলতে পারি না আমি শুনেছি শুনেছি)।


11
একটি গডজিলা কমিট! Eeeeeeeek !!!
প্যাটার টারিক

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

1
হ্যাঁ, "খারাপ" বা "দেরী" হয়। আপনার সংস্থায় যদি এর কোনও নাম না থাকে, তবে প্রশ্নযুক্ত বিকাশকারীটির নাম দিন। "আরে নতুন লোক, জেরি করো না! তাড়াতাড়ি কমিট কর এবং প্রায়শই কমিট কর।"
চয়নবান

জেরি করবেন না, এটি একটি কার্যকর পদ্ধতির! এছাড়াও বৃহত্তর-প্রতিশ্রুতিবদ্ধ চাপ দেওয়া বিকাশকারীদের সংস্করণ ব্যবহারের ক্ষেত্রে ক্ষয় নয় বা বোঝে না source জ্ঞান চেক করুন!
স্বতন্ত্র

কারও নাম জেরি হলে কী হবে?
Loïc Faure-Lacroix

12

বিটিডাব্লু, একসাথে একটি ভাল অনুশীলন অনেকগুলি প্রতিশ্রুতিবদ্ধ?

ভাল, দীর্ঘ সময়ের জন্য পরিবর্তনগুলি ধরে রাখা, এবং বিভিন্ন বৈশিষ্ট্য এবং বাগ ফিক্স বাস্তবায়ন করা এবং তারপর তাদের প্রতিশ্রুতিবদ্ধ করা ভাল অনুশীলন নয়, এটি একটি উপায় যা বড় প্রতিশ্রুতি ঘটতে পারে।

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

সুতরাং, এটি একটি প্রতিশ্রুতি স্পর্শ ফাইল সংখ্যার চেয়ে আরও অনেক কিছু আছে।


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

8

আমি যে শব্দটি শুনেছি তা হ'ল "চঙ্কিল চেক-ইনস" । এবং আমি তাদের ভক্ত নই। আমি ছোট ছোট কমিট পছন্দ করি যা নিশ্চিত করে যে কোনও প্রকল্পের যুক্তিসঙ্গত পদক্ষেপে অন্য কোনও কিছুই ভাঙা যায় না। বড় প্রতিশ্রুতি সাধারণত যে বিষয়গুলি ঘটে তখন কিছু সময়ের জন্য পুনরায় সৃষ্টি হওয়া বিষয়গুলিতে ভরা fra


+1 হিসাবে আমি সেসময় এটি মনে রাখিনি (যদিও আমি মনে করি না যে এটি একটি জেনেরিক শব্দ, বা আমি এটি সম্পর্কে অসচেতন) তবে আমি শুনেছি "অংশ" শব্দটি বিশেষভাবে পারদর্শী দ্বারা ব্যবহৃত হয়েছে একটি এক্সটেনশান ডেটা বিভিন্ন অংশ সহ একটি বড় কমিট জমা দেওয়ার অনুমতি দেয়, কিন্তু এর বাইরে আমি মনে করি না যে আমি সাধারণভাবে কমিটের জন্য এই শব্দটি কখনও শুনেছিলাম।
হাইলেম

বিকাশকারী যখন সেই শব্দটি ব্যবহার করেছিলেন তখন আমি যে সংস্থাটিতে ছিলাম সোর্সগিয়ার ভল্টটি ব্যবহার করছিলাম।
জেসি সি স্লিকার

3

আমি এটিকে "টিপিক্যাল এসভিএন কমিট" বা "আগামীকাল মুক্তি দিবসের প্রতিশ্রুতি" বলি

আমি যতটা এসভিএনকে ভালবাসি, আমি কেবল স্থানীয় কমিটগুলি করতে পারি না তা দ্বারা বন্ধ হয়েছি।

সম্পাদনা: কমিট বার্তায় তাদের কাছে সাধারণত "স্টাফ" এবং "বিয়ার" শব্দ থাকে।

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



2
  • প্রাথমিক প্রতিশ্রুতি - প্রকল্প যা পুনর্বিবেচনা নিয়ন্ত্রণের অধীনে ছিল না এসভিএন-তে ফেলে দেওয়া হয়েছিল
  • রিফ্যাক্টরিং - স্মিফ নামকরণ কনভেনশন থেকে ক্লাসের নাম পরিবর্তন করা বা প্যাকেজ শ্রেণিবিন্যাসের মূল পরিবর্তন করার বিষয়ে স্থপতিটির উজ্জ্বল ধারণা রয়েছে
  • কোড ফর্ম্যাট - স্থপতি স্থিতিশীল কোডটি 4 থেকে 3 স্পেসে পরিবর্তন করতে বা ইউনিক্স থেকে উইন্ডোতে লাইন এন্ডিংস পরিবর্তন করার সিদ্ধান্ত নিয়েছে (বা ফিরে)
  • শুক্রবারের প্রতিশ্রুতি - জো সর্বদা তার পুরো সপ্তাহের কাজটি শুক্রবার সাড়ে 16:30 টায় কমিট করে
  • ইউউপস কমিট করে - টেড ভুল করে রুট ডিরেক্টরি মুছে ফেলেছে, তা কমিট করেছে এবং এখন সে পুরো ফাইলের স্তরক্রমকে আবার এসভিএন-এ পাম্প করে

0

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

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

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