গিটফ্লো ব্যবহার করার সময় একটি পরিষ্কার গিট ইতিহাস বজায় রাখা - নিমজ্জিত বিকাশের প্রতিশ্রুতি দেয়


9

গিটফ্লো ব্যবহার করে, একটি release-1.0.0শাখা তৈরি করার সময় এবং এটি উভয়কে মার্জ করার সময় masterএবং developউভয় শাখায় একটি অনুপস্থিত প্রতিশ্রুতি থাকবে:

  • masterযেখানে release-1.0.0একীভূত হয়েছিল তার প্রতিশ্রুতি থাকবে নাdevelop
  • developযেখানে release-1.0.0একীভূত হয়েছিল তার প্রতিশ্রুতি থাকবে নাmaster

পরিবর্তে, পরে hotfix-1.0.1সৃষ্টি মিশে গিয়ে তৈরি হয় masterযখন এটি মার্জ করা হচ্ছে, develop, একত্রীকরণ করে পূর্ববর্তী অন্তর্ভুক্ত করা হবে কমিট যেখানে release-1.0.0মিশে গিয়ে তৈরি হয় master; সুতরাং এটি এর মতো দেখাবে:

User 'john doe' is trying to merge the following commits into 'develop' from 'hotfix-1.1.1'.

* merge release-1.0.0 to master
* merge release-1.1.0 to master
* Fix shopping cart critical bug

এই শব্দ বিভ্রান্তিকর থাকে, তাহলে আপনি খুব সহজেই লক্ষ্য করতে এই everytie আপনি দেখতে developসাধারণত পিছনে করে একটি দম্পতি হয় master(যদিও বিকশিত করতে, তাত্ত্বিকভাবে, উচিত শুধুমাত্র এগিয়ে হতে যেহেতু এটি প্রধান শাখা আছে। সেগুলো হল করে থেকে মার্জ হয় release-x.x.xথেকে master)।

একটি পরিষ্কার ইতিহাস বজায় রাখতে কীভাবে এটি পরিচালনা করা উচিত?


"পরিষ্কার ইতিহাস" সংজ্ঞায়িত করুন।
জেস ব্রাউনিং 21

3
একটি পরিষ্কার ইতিহাস চান? গিটফ্লো ব্যবহার করবেন না। সংজ্ঞা দ্বারা এটি আপনার ইতিহাসকে দূষিত করে। পরিবর্তে, আপনার আসলে কী প্রয়োজন তা ভেবে দেখুন এবং তার চারপাশে একটি ওয়ার্কফ্লো তৈরি করুন, যাতে আপনি কীভাবে কাজ করতে চান তা বাস্তবে এটি ফিট করে।
এফপি

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

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

গিটহাব এবং অন্যান্য জায়গায় গিটফ্লো দিয়ে কীভাবে বিভিন্ন সমস্যা সমাধান করা যায় সে সম্পর্কে বেশ কয়েকটি আলোচনা রয়েছে are কখনও কখনও কেবল সিলভার বুলেট থাকে না।
axel

উত্তর:


4

আমি মনে করি একটি ভাল পদ্ধতির দুটি "প্রধান" শাখা না এড়ানো, মাস্টার এবং বিকাশ এক ধরণের অপ্রয়োজনীয় হয়। এটি পুঙ্খানুপুঙ্খভাবে এখানে ব্যাখ্যা করা হয়েছে , cactus-flowলেখক দ্বারা ব্র্যান্ড করা।

কিছু পয়েন্ট গিট-প্রবাহের বিপরীতে দাঁড়িয়েছে:

  • মাত্র একটি প্রধান শাখা
  • কেবল দ্রুত-ফরোয়ার্ড মার্জ হয়

আমার জন্য শেষটি গুরুত্বপূর্ণ, যেমন দীর্ঘকাল ধরে গিট-ফ্লো ব্যবহার করার পরে আমি এখনও --no-ffমার্জ সম্পর্কে দরকারী কি তা দেখতে পাইনি ।

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

আইএমএইচও এটি আপনার বড় ভুল। যতটা সম্ভব গিট-প্রবাহকে আটকে রাখার কোনও কারণ নেই। এটি হাজার হাজার প্রকল্পে ব্যবহৃত হতে পারে তবে এটি আপনার প্রভাবিত করে না, এটি ভাল করে না।

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

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