আমি আপনাকে আমার ব্যক্তিগত অভিজ্ঞতা দ্বারা সমর্থনযুক্ত কিছু ইঙ্গিত দেওয়ার চেষ্টা করব।
আমার একজন সতীর্থ অভিজ্ঞ, যদিও তিনি সত্যই এসভিএন বুঝতে পারেন না। স্বাভাবিকভাবেই, তাঁর মানসিক মানচিত্রে ফাঁকা অঞ্চলগুলি এসভিএন এর সমুদ্রকে চিত্রিত করে কারণ এটি তার পরিবর্তে অদ্ভুত ব্যবহারের ধরণগুলি গ্রহণ করে।
উদাহরণস্বরূপ, তিনি "প্রতি বিকাশকারীকে প্রতিদিন 1 এসভিএন প্রতিশ্রুতিবদ্ধ" নীতি ঘোষণা করেছিলেন কারণ অন্যথায় "সার্ভারটি শীঘ্রই ডিস্কের জায়গার বাইরে চলে যাবে"। যখন আমি তাকে বুঝিয়ে দিয়েছিলাম যে এসভিএন কমিটস ডেল্টাস, সম্পূর্ণ কপি নয়, তখন সে সন্দেহের সাথে জবাব দিয়েছিল এবং আজও আমি পুরোপুরি নিশ্চিত নই যে সে এর অর্থ কী তা বুঝতে পারে কিনা।
এমনকি যদি ডিস্কের স্থানটি কোনও সমস্যা হয়ে থাকে তবে আপনি সর্বদা এক সাথে অনেকগুলি ফাইল কমিট করতে পারেন, তাই আমি মনে করি তিনি যা পরামর্শ দেন তা ভুল সমাধান। তদুপরি, বড় বাইনারি ফাইলগুলিতে চেক করে প্রচুর জায়গা নষ্ট করা সম্ভব কারণ এসভিএন বাইনারি ফাইলগুলির জন্য ডেল্টাস সংরক্ষণ করে না। প্রতিদিন একটি চেক ইনও খারাপ কারণ এটি আপনাকে এমন পরিবর্তনগুলি করতে বাধ্য করে যা একত্রে অন্তর্ভুক্ত নয়, উদাহরণস্বরূপ আপনি যদি দিনে একাধিক বাগ ঠিক করেন।
আমাদের সংস্থায় আমরা যে সমাধানটি গ্রহণ করেছি তা হ'ল বাইনারি ফাইলযুক্ত কোনও প্রতিশ্রুতি প্রত্যাখ্যানকারী একটি ফিল্টার রয়েছে। আমরা চেক-ইন মন্তব্যে একটি বিশেষ কীওয়ার্ড ব্যবহার করে অঙ্গীকারকে বাধ্য করতে পারি (আমাদের এসভিএন দেখাতে হবে যা আমরা জানি যে আমরা কী করছি)। বছরে বা দু'বারে কোনও প্রকল্প পরিচালক পুরানো শাখাগুলি সংরক্ষণাগারভুক্ত করে সেগুলি সংগ্রহস্থল থেকে সরান। এই কৌশলটি সহ আমাদের যে জায়গাগুলি আমি জানি তাদের স্থানের সমস্যা নেই (আমাদের ভান্ডারটি বিভিন্ন বিভিন্ন প্রকল্পকে সমর্থন করে এবং এর মধ্যে 100000 এর বেশি সংশোধন রয়েছে)।
সংক্ষিপ্তসার হিসাবে, আপনি তাকে বলতে পারেন যে আপনি তার সাথে একমত হন যে ডিস্ক স্থান একটি গুরুত্বপূর্ণ সমস্যা তবে অন্যদিকে, নির্দেশ করুন
- এক একার দৈনিক চেক ইন পরিবর্তে বৈশিষ্ট্য-সম্পর্কিত চেক-ইনগুলির গুরুত্ব;
- যেহেতু প্রতিদিন একটি বড় বাইনারি ফাইল পরীক্ষা করে, যে কোনওভাবেই ডিস্কটি পূরণ করা যায়।
তারপরে আপনি সুপারিশ করতে পারেন যে ডিস্কের স্থান নিয়ন্ত্রণ নিয়ন্ত্রণে রাখার কৌশলগুলি (যেমন বাইনারি-ফাইল ফিল্টার, নিয়মিত ব্যাকআপ এবং পুরানো অব্যবহৃত শাখাগুলি পরিষ্কার করা) সম্পর্কে আলোচনা করার জন্য আপনার একটি বৈঠক (সম্ভবত অন্যান্য বিকাশকারী বা সিস্টেম প্রশাসকদের সাথেও) থাকতে হবে।
এসভিএন-তে Eclipse। প্রকল্পের কনফিগারেশনটি অন্তর্ভুক্ত করা যায় কিনা সে সম্পর্কে আমাদের একটি উত্তপ্ত তর্ক ছিল। আমার সতীর্থ জোর দিয়েছিলেন আমাদের উচিত, যদিও এটি অসংখ্য অর্থহীন দ্বন্দ্বের কারণ হয়ে দাঁড়িয়েছে। আমি পৃথক বিকাশকারী কনফিগারেশন ফাইলগুলিকে এসভিএন রাখার বিরুদ্ধে ছিলাম। পরিশেষে, এটি প্রমাণিত হয়েছিল যে আমার সতীর্থের প্রতি "প্রতিস্থাপনের কাজগুলিতে প্রতিশ্রুতিবদ্ধ কোড" নিশ্চিত করার জন্য প্রতিশ্রুতিবদ্ধতার পরে পুরো উত্স ট্রিটি পুনরায় চেক করার অভ্যাস ছিল। এই কারণেই তিনি এসভিএন-তে প্রকল্পের কনফিগারেশনটি আটকে রাখতে অনড় ছিলেন - সুতরাং প্রকল্পটি পুনরায় আমদানি করা সহজ হবে। আমি যখন ব্যাখ্যা দিয়েছিলাম যে প্রতিশ্রুতিবদ্ধ কাজটি অনুলিপি দ্বারা রিমোট বাই-বাই-বাইটে সিঙ্ক্রোনাইজ হয় যা পুনরায় চেকআউটকে অপ্রয়োজনীয় করে তোলে, তখন আমার সতীর্থ আবার সন্দেহের সাথে সাড়া দিয়েছিলেন এবং শেষ পর্যন্ত পুরো বিষয়টি তুচ্ছ হিসাবে তিরস্কার করেছিলেন।
আমার মতে, আমাদের দলটি প্রকল্প কনফিগারেশন ফাইলগুলিতে এসভিএন বিরোধগুলি সমাধান করে সময় নষ্ট করে যার মধ্যে কেবল বিকাশকারী-নির্দিষ্ট সেটিংস থাকে যা মোটেও এসসিএমের সাথে ভাগ করে নেওয়া প্রয়োজন না। এই সমস্ত বিশৃঙ্খলা কারণ কেউ ভুল অনুমানের চারপাশে প্রক্রিয়াটি তৈরি করেছেন।
আপনি কি একটি বিল্ড সার্ভার ব্যবহার করেন? আমাদের একটি বিল্ড সার্ভার রয়েছে যা সম্পূর্ণ প্রকল্পটি পরীক্ষা করে এবং প্রতি রাতে এটি সংকলন করে। পরের দিন সকালে পরীক্ষকগণের কাছে পণ্যটির একটি প্রস্তুত-পরীক্ষার ইনস্টলর রয়েছে (যদি মাস্টার বিল্ড সঠিকভাবে চালিত হয়) এবং আমাদের (বিকাশকারীদের) সমস্ত সতর্কতা (এবং ত্রুটিগুলির ক্ষেত্রে কোনও কিছু আছে) সহ একটি বিল্ড রিপোর্ট রয়েছে। অবশ্যই, আপনাকে বিল্ড সার্ভারের জন্য স্ট্যান্ডার্ড কনফিগারেশন ফাইলগুলি সেট আপ করতে হবে এবং তাদের চেক ইন করতে হবে। প্রতিটি বিকাশকারী তারপরে প্রকল্পের বাকী অংশগুলির সাথে সেগুলি পরীক্ষা করে দেখতে পারে তবে তাদের স্থানীয় কোনও পরিবর্তন চেক করার অনুমতি নেই are
এই দৃশ্যে আপনি সম্পূর্ণ প্রকল্পটি যাচাই করতে এবং যে কোনও সময় এটি তৈরি করতে সক্ষম হবেন তার প্রয়োজনীয়তার দিকে নজর দেন। আপনি এমন পরিবর্তনগুলিকে মার্জ করার জন্য সময় ব্যয় করা এড়াতে পারেন যা প্রথমে চেক করা উচিত ছিল না কারণ তারা পণ্যটির অংশ নয়: পণ্যটি মাস্টার বিল্ড, এবং এটি অবশ্যই পরিষ্কার রাখতে হবে। যদি কেউ মাস্টার বিল্ডটি ভাঙেন (যেমন তার নিজের। প্রকল্প প্রকল্পে পরীক্ষা করা) আপনি পরিবর্তনগুলি ফিরিয়ে নিতে পারেন বা সেই বিকাশকারীকে সমস্যা সমাধানের জন্য বাধ্য করতে পারেন।
হতে পারে যদি তিনি আবার বিষয়টি নিয়ে আসে তবে আপনি আবার একটি সভা করার পরামর্শ দিতে পারেন (সম্ভবত অন্যান্য বিকাশকারীদের সাথে) এবং একসাথে একটি সাধারণ কৌশল খুঁজে বের করতে।
নিজেকে একজন সিনিয়র হিসাবে দেখা এমন সতীর্থকে কীভাবে আমি এসভিএন বেসিকগুলির আরও ভাল বোঝার জন্য বোঝাতে পারি?
আমি মনে করি যে সর্বোত্তম কৌশল হ'ল দ্বন্দ্বটিকে ব্যক্তিগত পর্যায়ে নিয়ে আসা এবং এগুলি হাতে নিয়ে সম্ভাব্য সমাধানগুলি নিয়ে আলোচনা করা এড়ানো। যদি আপনার মনে হয় যে তিনি ব্যক্তিগত দ্বন্দ্বের সন্ধান করছেন, তবে এখানে কিছু পরামর্শ দেওয়া হয়েছে (আবারও ব্যক্তিগত অভিজ্ঞতা থেকে):
- আপনার দলের গতিশীলতা কেমন? আপনার অন্যান্য সহকর্মীরা কি এই টিম সাথীর সাথে একই রকম অভিজ্ঞতা অর্জন করছেন? অনেকগুলি ছোট, খুব স্পষ্ট নয় এমন ইঙ্গিত রয়েছে যে কোনও দল তার সদস্যদের মধ্যে একটিকে কিছু আচরণ (ছোট রসিকতা বা পর্যবেক্ষণ) নিরুৎসাহিত করতে এবং গঠনমূলক দ্বন্দ্বকে উত্সাহিত করতে (কোনও সভার প্রস্তাব উত্থাপন করতে, বা কফি বিরতির সময় অনানুষ্ঠানিকভাবে কোনও বিষয় উত্থাপন করতে পারে) )। কখনও কখনও একটি ভাল দল দ্রুত একটি বিরক্তিকর উপাদানকে আলাদা করে জিনিসগুলিকে স্বাভাবিক অবস্থায় ফিরিয়ে আনতে পারে।
- আপনার কর্মীদের পরিচালনা কতটা ভাল? আমাদের সংস্থায় আমাদের একটি সংঘাতের মামলা ছিল এবং পরিস্থিতি পরিষ্কার করতে কর্মীদের প্রধানকে হস্তক্ষেপ করতে হয়েছিল। এটি সুন্দর ছিল না, তবে কখনও কখনও কাজের পরিবেশ এতটাই খারাপ হয়ে যায় যে এটি নিজে থেকে ভাল হয়ে উঠবে না। আমি আশা করি এটি আপনার ক্ষেত্রে নয় (এখনও পর্যন্ত এটি আমার কাছে অনুভূত হয় নি) তবে আপনার কাছে একটি ভাল কর্মী প্রশাসন আছে কিনা বা আপনার নিজেরাই দ্বন্দ্ব সমাধান করতে হবে কিনা তা জানা সর্বদা ভাল।
আমি কেন এটি লিখছি? আপনি বলেছিলেন যে আপনি "একজন সতীর্থকে বোঝাতে চান, যিনি নিজেকে প্রবীণ হিসাবে দেখেন, এসভিএন বেসিকগুলির আরও ভাল ধারণা পেতে"। আমার কাছে মনে হচ্ছে সংঘাতটি খুব ব্যক্তিগত হয়ে উঠছে। কিছু মনোবিজ্ঞানী বজায় রাখেন যে আমাদের যোগাযোগের 70% সংবেদনশীল স্তরে থাকে, যদি এই স্তরটি কাজ না করে, তবে লোকেরা সত্য সম্পর্কে কথা বলা বন্ধ করে দেয় কারণ তারা আবেগ নিয়ে কাজ করতে খুব ব্যস্ত।
সুতরাং, আপনার পয়েন্টগুলি ব্যাখ্যা করার পাশাপাশি, আপনি যোগাযোগের উন্নতির জন্য কিছু করার চেষ্টা করতে পারেন। কোনও কফির জন্য আমন্ত্রণ জানানো বা দুপুরের খাবারের সাথে একত্রে আমন্ত্রণ জানানো, কাজের সাথে সম্পর্কিত নয় এমন বিষয় সম্পর্কে একটি সংক্ষিপ্ত কথোপকথন করা যোগাযোগটি উন্নত করতে পারে এবং আপনার সহকর্মীর মনোযোগ আপনি যে গুরুত্বপূর্ণ বিষয়গুলি বুঝতে চান তা ফিরিয়ে আনতে পারে। যদি তিনি এই ধরণের যোগাযোগ গ্রহণ করেন, তবে সম্ভবত আপনি এখনও পর্যন্ত যে দ্বন্দ্বগুলি তৈরি করেছিলেন তা সম্পর্কিত ছিল যে আপনি একে অপরকে ভালভাবে জানেন না এবং কিছু ছোট ভুল বোঝাবুঝি হয়েছিল তবে তিনি সম্ভবত গঠনমূলক সহযোগিতা তৈরির জন্য উন্মুক্ত। তিনি যদি তা অস্বীকার করেন তবে তার পক্ষে আরও গভীর শত্রুতা থাকতে পারে।
এই ক্ষেত্রে, আমি মনে করি আপনার ভূমিকা স্পষ্ট হওয়া অবধি আপনার অপেক্ষা করা উচিত। আপনি যদি সতীর্থের সাথে অফিসিয়ালি আপনার চেয়ে উচ্চ পদমর্যাদা না রাখেন তবে বিষয়গুলিকে উন্নত করার জন্য আপনার প্রয়াসে বিরক্ত হওয়ার কোনও মানে নেই। সময়ের সাথে সাথে তাকে এটি গ্রহণ করতে হবে বা নিজের থেকে বোকা বানাতে হবে যদি সে আরও ভাল করে জানার চেষ্টা চালিয়ে যায়। তিনি যদি আছে একটি উচ্চ পদে, তুমি তাকে বুঝতে পারি যে এই আলোচ্য নয় দিন একটি উপায় খুঁজে বের করা উচিত: আপনার পর্যবেক্ষণ উত্পাদনশীলতা উন্নত মূল লক্ষ্য হল এবং তার অবস্থান undermining, এই 100% স্পষ্ট হতে হবে। যখন ভূমিকাগুলি স্পষ্ট করে দেওয়া হয়েছে, যদি তিনি এখনও গঠনমূলক পরামর্শ বা সমালোচনা গ্রহণ করতে না পারেন, তবে তার অবশ্যই আত্মসম্মান বা এরকম কিছু নিয়ে কিছু সমস্যা থাকতে হবে।
সুতরাং যদি উপরের সমস্ত কৌশল ব্যর্থ হয় এবং আপনি হতাশ বোধ করেন (খুব) হতাশ হন তবে আমি ভয় করি যে কেবলমাত্র যুক্তিযুক্ত জিনিসই হ'ল আপনার জিনিসগুলি প্যাক করা এবং আরও ভাল জায়গা অনুসন্ধান করা। আমি এই অভিজ্ঞতাটি তিন বছর আগে তৈরি করেছিলাম এবং আরও একটি ভাল সংস্থার সন্ধান পেয়েছি যেখানে আমি এখন খুব সন্তুষ্ট। হতে পারে এটি আপনার ক্ষেত্রে না (আশা করি অবশ্যই না) তবে এই বিষয়টিও বোঝার চেষ্টা করুন।
শুধু আমার 2 সেন্ট।