SVN দুর্বলভাবে ব্যবহার করা - মার্চুরিয়াল এর উত্তর?


13

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

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

এটি গ্রহণ করার জন্য কি ভাল পন্থা? মনে রাখবেন যে টিমটি খুব নমনীয় এবং এমন কোনও কিছু নিয়ে যাবে যা আমাদের কাজের মান উন্নত করবে এবং আমরা কীভাবে সহজ জিনিসগুলি করব তা তৈরি করবে - সিআইও আমাকে যখন জিজ্ঞাসা করেছিল আমি কীভাবে এসভিএন এর সম্ভাবনাতে ব্যবহার করছি না " আমরা ব্যবহার করতে পারি আরও ভাল কিছু আছে? " সুতরাং তিনি এটি সঙ্গে বোর্ডে।


13
HgInit - এটি সাবস্ট্রেশন পুনর্ -শিক্ষার সাথে শুরু হয়, যা আমি মনে করি আপনি দরকারী হবেন।
ইয়ানিস

20
আপনি কি ভয় পান না যে তারা এইচজিও খারাপ ব্যবহার করতে পারে?
ওডে

6
আমি মনে করি একটি ডিভিসিএস আপনার পরিস্থিতির জন্য একটি ভয়াবহ ধারণা হবে, কারণ শেখার বক্রতা বেশি এবং আপনি স্পষ্টতই একটি সংস্থা হিসাবে কেবলমাত্র এসভিএন এর প্রাথমিক বৈশিষ্ট্যগুলি ব্যবহার করার জন্য লড়াই করছেন। আপনি ডিভিসিএসে স্থানান্তরিত হওয়া কেবল তখনই হবে যখন আপনি এসভিএন-তে ট্যাগ, সঠিক সংগ্রহস্থল সংস্থা এবং যথাযথ মার্জ করার কৌশলগুলি ব্যবহার করে এবং এটি খুঁজে পাওয়া যায় যে এটি এখনও আপনার প্রয়োজনের অভাবে রয়েছে।
maple_shaft

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

4
@ ম্যাপেল_শ্যাফ্ট I will probably not take DVCS very seriously until I end up on a large development teamবা আপনি বিতরণকারী দলে শেষ না হওয়া পর্যন্ত। আমরা একটি ছোট দল (৫ জন) ৩ টি অবস্থান থেকে কাজ করছি (এবং কখনও কখনও ৫
জনও

উত্তর:


15

হ্যাঁ.

যদি আপনি নিজের ওপিতে "এসভিএন" কে "পারফোরস" এর সাথে প্রতিস্থাপন করেন তবে আপনি আমার বর্তমান কাজটি শুরু করার সময় নিজেকে দেখতে পেলাম এমনকি ম্যানুয়াল-পরিবর্তন অনুলিপি পর্যন্ত। দু'বছর আমরা মার্চুরিয়ালে রয়েছি এবং সকলেই একমত হন যে এটি একটি দুর্দান্ত পরিবর্তন been

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

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

হিগনিট সাইট সম্পর্কে মন্তব্যটিও স্পষ্ট , কোনও সংস্করণ নিয়ন্ত্রণ কর্মপরিবাহের একটি রূপরেখা হিসাবে যা আসলে কাজ করে (ধরে নিলে আপনি এটি আপনার কোম্পানির নির্দিষ্ট QA ওয়ার্কফ্লোতে সামঞ্জস্য করবেন)।

চলন্ত সংস্করণ নিয়ন্ত্রণগুলির একমাত্র সম্ভাব্য ত্রুটিটি হ'ল আপনার এমন একজনের প্রয়োজন হবে যিনি পরিবর্তনের পিছনে সত্যিকারের চালিকা শক্তি, যিনি বিষয়টি পড়তে পেরে খুশি হন এবং সত্যিকার অর্থে তার সম্ভাবনার সেরাটির জন্য সরঞ্জামটি ব্যবহার করেন, যা আপনি মনে করতে চান না।

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


3
-1, যদি ডেভেলপারদের ইতিমধ্যে সাবভার্সনের সাথে এ জাতীয় সমস্যা থাকে তবে তারা আরও জটিল সিস্টেম "পাওয়ার" সম্ভাবনা খুব কম unlikely সঠিক উত্তরটি যেমন প্রশ্নের মন্তব্যে বলা হয়েছে, সাবভার্সিয়ন (এবং সাধারণভাবে
ভিসিএস

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

2
@ এডউডকক: পারফর্সগুলির মধ্যে এখনও অবধি ব্যবহৃত কোনও ভিসিএসের সবচেয়ে খারাপ শাখা থাকতে পারে। এসভিএন-তে ব্র্যাঞ্চিং করা অনেক সহজ।
কেভিন

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

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

21

একটি ভিন্ন সরঞ্জাম সম্ভবত আপনার সমস্যা সমাধান করতে যাচ্ছে না, আমি বলব আপনার এই নিবন্ধটি পড়া উচিত, আমি এটি সবচেয়ে সহায়ক বলে মনে করেছি:

http://thedailywtf.com/Articles/Source-Control-Done-Right.aspx

আমি মনে করি নিবন্ধের মূল পয়েন্টটি এখানে সংক্ষেপিত হয়েছে, তবে দয়া করে এটি পড়ুন:

শেষ অবধি: সরঞ্জাম সম্পর্কে সত্যই নয়

বিভিন্ন উত্স নিয়ন্ত্রণ সিস্টেমের সাথে কাজ করার এবং সংহত করার জন্য আমি যে সময় ব্যয় করেছি, আমি এক সিদ্ধান্তে পৌঁছেছি: এটি সরঞ্জাম নয়, আপনি কীভাবে এটি ব্যবহার করেন এটি। এটি একটি ভয়াবহভাবে জড়িত বক্তব্য, তবে এটি এখানে বিশেষত সত্য বলে মনে হয়। উত্স কোড পরিবর্তনগুলি সঠিকভাবে পরিচালনার জন্য ব্যবহৃত হয় - বিল্ডগুলির জন্য লেবেলিং, ব্যতিক্রম দ্বারা শাখা করা ইত্যাদি the এমনকি স্তম্ভিত উত্স নিয়ন্ত্রণ ব্যবস্থা (* কাশি * সোর্স সাফ * কাশি *) অনেকটা হাফজার্ড কমিটস এবং মার্চিয়াল সেট আপকে ছাড়িয়ে যাবে push কর্মের।


6
+1, এটি আসলে সরঞ্জামগুলি সম্পর্কে নয়। পারফরম্যান্স হিসাবে এসভিএন পুরোপুরি সক্ষম।
অ্যাঞ্জেলো

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

এটি সত্যিকার অর্থে সরঞ্জামগুলির বিষয়ে নয়, যদি না আপনি গিথুব, বিটবাকেটের মতো উত্স নিয়ন্ত্রণ সরবরাহকারীর প্রশংসা করার জন্য সেরা ব্যক্তিদের না পেয়ে থাকেন
ক্রিস এস

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

10

না। প্রযুক্তি খুব কমই এই ধরণের সমস্যা সমাধান করে।

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

  • ক) পর্যাপ্ত বা আরও ভাল
  • খ) অপর্যাপ্ত, তবে আপনার বর্তমান সাবভারশন ব্যবহারের চেয়ে ভাল
  • গ) এখনকার মতো অপ্রতুল
  • d) এখনকার চেয়ে খারাপ

গ) এবং ঘ) সম্ভবত ফলাফল হিসাবে শব্দ। আপনি কী ভাবেন এগুলি লিখুন) ক) বা খ)।


5

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


3

না। সরঞ্জামগুলি পদ্ধতিটির প্রতিস্থাপন নয়।

আপনি যদি এসসিএম হিসাবে সাবভারশন ব্যবহার না করেন তবে আপনি মার্চুরিয়ালও ব্যবহার করতে পারবেন না (এবং এটি সম্ভবত ঘটবে)


2

এসভিএন আপনার যা করা দরকার তা করতে পারে এবং একটি সন্দেহজনক বেতন-অফের জন্য ঘোড়াগুলির মাঝারি স্ট্রিম পরিবর্তন করার দরকার নেই।

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

আমি জানি যে লোকেরা সফলভাবে চেষ্টা করেছে of সম্ভবত তাদের মধ্যে একটি আপনার দলের হয়ে কাজ করবে:

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

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

(*) "নতুন ভিসিএস" দ্বারা আমি অগত্যা পারদর্শী বা গিট বোঝাতে চাইছি না, এটি এসভিএন (সঠিকভাবে সম্পন্ন )ও হতে পারে।

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