গিট ব্যবহার করার সময়, সক্রিয় বিকাশের জন্য মাস্টার শাখা ব্যবহার করা বাঞ্ছনীয়?


32

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

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

  2. একটি বিকল্প মডেল যেখানে মাস্টার শাখা রক্তপাত প্রান্ত উন্নয়ন কোড, QA পরীক্ষার জন্য প্রস্তুত কোডের জন্য একটি সংহত শাখা এবং স্থাপনার জন্য প্রস্তুত স্থিতিশীল কোডের জন্য একটি উত্পাদন শাখা প্রতিনিধিত্ব করে।

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


1
স্কট চকন গিটহাবটি বিকাশ করতে যে ওয়ারফক্লো ব্যবহার করেছেন তা আমি পছন্দ করি: scottchacon.com/2011/08/31/github-flow.html
user16764

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

@ মুর্ফ - সত্য, তবে যেহেতু আমরা স্ক্র্যাচ থেকে এগুলি কিছু করছি, আমি ভেবেছিলাম যে সাধারণ কনভেনশনগুলি কম-বেশি অনুসরণ করা ভাল be যাতে নতুন বিকাশকারীরা অস্বাভাবিক অভ্যন্তরীণ অনুশীলনের কারণে খাড়া শেখার বাঁক না পায়।
rjzii

তারপরে আপনি নিজের প্রশ্নের উত্তর দিয়েছেন (-: আপনি বক্ররেখার আগে এগিয়ে রয়েছেন এমন প্রশ্ন জিজ্ঞাসা করেও সত্যি কথা বলতে ...
মার্ফ

উত্তর:


33

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

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


7
+1 টি। এবং "উত্পাদনের জন্য প্রস্তুত" কোডটি গুরুত্বপূর্ণ কোড হওয়ায় এটিও এই গুরুত্বটিকে হাইলাইট করে একটি নাম সহ একটি শাখায় বাস করা উচিত। ডিফল্ট শাখার নাম হিসাবে "মাস্টার" অবশ্যই সেই অনুরোধটি পূরণ করে না, কারণ এটি যে কোনও উদ্দেশ্যগুলির জন্য অন্য প্রতিটি ভান্ডারে ব্যবহৃত হয়।
বনানউইজন

4
+1 টি। এটিই বাস্তব জীবনের উত্তর। বিষয়টি জোর দেওয়ার জন্য: আপনার দলের কেউই "মাস্টার" শাখাকে সংজ্ঞায়িত করেননি, গিট সিস্টেমটি করেছে। যে কোনও গুরুত্বপূর্ণ জিনিসের জন্য, আপনার টিমের কেউ যে সংজ্ঞা দিয়েছেন সেগুলি শাখায় আটকে থাকুন।
ট্র্যাভিস উইলসন

1
সম্পুর্ন একমত. যদিও আমি গিট ফ্লো মডেলটিকে খুব পছন্দ করি ( nvie.com/posts/a-successful-git-branching-model ), সেখানে আমাকে বিরক্ত করার একমাত্র জিনিসটি হ'ল মাস্টার মুক্তির জন্য কঠোরভাবে সংরক্ষিত, যা পাল্টা স্বজ্ঞাত।
বাচি

12

না, এটি কিউএ যাওয়ার আগে শুরুতেও ঠিক নয়। সেরা অনুশীলন হিসাবে, বিকাশের প্যাটার্নটি শুরু থেকে শেষ পর্যন্ত সামঞ্জস্যপূর্ণ হওয়া উচিত। আপনার মাস্টার শাখাটি খালি শুরু হওয়া উচিত, আপনার নিজের শাখাটি বন্ধ করা উচিত এবং ফাইলগুলি যুক্ত করা শুরু করা উচিত, আপনার ইন্টিগ্রেশন শাখায় মার্জ করা উচিত, পরে আপনার মাস্টারের সাথে যুক্ত করা উচিত।

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


3
ট্যাগগুলির মাধ্যমে সংস্করণ ট্র্যাকিং করা কি ভাল নয়?
অ্যাডোনিস কে। কাকুলিডিস

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