আইডিইএতে একক ধাক্কায় স্থানীয় কমিটদের গ্রুপকে কীভাবে একত্রিত করা যায়?


87

আইডিইএতে আমি কয়েকটি কমিটকে চাপ দেওয়ার চেষ্টা করছি।

আমার একটি আবশ্যকতা রয়েছে যে রিমোট সার্ভারে এটি একক কর্মের মতো দেখাচ্ছে।

আমি টিপতে এবং নীচের উইন্ডোটি দেখতে ক্লিক করুন এখানে চিত্র বর্ণনা লিখুন

আমি এখানে স্কোয়াশ চেকবক্স দেখতে প্রত্যাশা করেছিলাম তবে এটি দেখতে পাচ্ছি না।

আমাকে সাহায্য করুন.


4
আইডিইএ পরামর্শ দিতে পারে না, তবে স্কোয়াশ করা একটি ইন্টারেক্টিভ রিবেস বা একীকরণের অঙ্গ, কমিট নয়। সেখানে দেখার চেষ্টা করুন।
musiKk

উত্তর:


117

আপনি রিবেস ব্যবহার করে এটি করতে পারেন। ভিসিএস / গিট / রিবেসে যান । তারপরে ইন্টারেক্টিভ বিকল্পটি নির্বাচন করুন । এটি আপনাকে কমিটগুলির একটি তালিকা প্রদর্শন করবে যেখানে আপনি কোনটি স্কোয়াশ করতে চান তা চয়ন করতে পারেন।

আপনি রিবাজিং শুরু করার পরে আঘাত করার পরে এটি স্কোয়াশেড কমিটের জন্য প্রতিশ্রুতিবদ্ধ বার্তার জন্য আপনাকে অনুরোধ জানাবে। এটি হয়ে যাওয়ার পরে আপনি পুশ ডায়ালগ ব্যবহার করে আপনার স্কোয়াশেড কমিটকে চাপতে পারেন।

স্কোয়াশ ডায়ালগ

ইন্টেলিজজে রিবেস সম্পর্কে আরও তথ্য এখানে


9
এই গিট সরঞ্জামগুলি পড়ার ক্ষেত্রে - "রিবেস শাখা" কথোপকথনের "ওন্টো ফিল্ড" এ কী প্রবেশ করতে হবে তা জানতে ইতিহাসের পুনর্লিখনটি পড়তে সহায়ক হতে পারে : e..g HEAD~3সর্বশেষ 3 টি কমিটি নির্বাচন করতে ব্যবহার করা যেতে পারে।
টিএমট্রন

যখন আপনি একসাথে একগুচ্ছ কমিটি স্কোয়াশ করেন, তখন কি প্রতিটি কমিটের স্বতন্ত্র বিবরণ হারিয়ে যায়? এটি কি কেবলমাত্র একটি বড় প্রতিশ্রুতিবদ্ধের মতো দেখায়?
ycomp

@ আইকম্প হ্যাঁ, ইন্টারেক্টিভ রিবেস ইতিহাস পুনর্লিখন করে, তাই পৃথক স্কোয়াশেড কমিটস হারিয়ে যায় এবং তাদের জায়গায় একটি নতুন একক তৈরি করা হয়।
বোহস্লাভ বার্গার্ড্ট 26'17

ধন্যবাদ, আপনি কি স্কোয়াশটিকে পূর্বাবস্থায় ফেলাতে পারেন?
ycomp

@ আইকম্প আমি বাস্তবে এটি কখনই করি নি, তবে এটি সম্ভব হওয়া উচিত। দয়া করে নিম্নলিখিত এসও পোস্টগুলি দেখুন: stackoverflow.com/q/10260151/1291150 , স্ট্যাকওভারফ্লো.
বোহস্লাভ বার্গার্ট

36

একটি নতুন উপায় আছে:

সংস্করণ নিয়ন্ত্রণ -> লগ -> প্রতিশ্রুতিতে রাইট ক্লিক করুন -> Interactively rebase from hereএবং তারপরে আপনি বাকী কমিটগুলি বেছে নিতে / স্কোয়াশ বেছে নিতে পারেন।


4
এই পদ্ধতির সমস্যাটি হ'ল একাধিক কমিটির জন্য "স্কোয়াশ" নির্বাচন করার কোনও উপায় নেই এবং এটি একে একে করার জন্য ক্লান্তিকর হয়ে ওঠে।
দিমিত্রি সেরডিউক

4
@ দিমিত্রিসারডিউক আপনি স্কোয়াশ করতে চান এমন কমিট নির্বাচন করতে ক্লিক শিফট করতে পারেন এবং তারপরে স্কোয়াশ নির্বাচন করুন -> স্কোয়াশ নির্বাচন করুন।
আরজভ

4
@ আরজভ ওহ আমার thisশ্বর হ'ল ঠিক মনে হয়েছিল এটি অনুপস্থিত! কথোপকথনে ডান-ক্লিক মেনু সম্পর্কে কোনও ইঙ্গিত নেই।
o_nix

21

আমার জন্য ইন্টেলিজ সহ সহজ উপায় হ'ল:

  • Logট্যাবে যান এবং আপনি যে স্কটিশটি চান তা থেকে কমিট বেছে নিয়েছেন
  • রাইট ক্লিক করুন এবং নির্বাচন করুন Reset Branch to this commit
  • mixinপ্রতিশ্রুতি থেকে আপনার পরিবর্তনগুলি রাখতে বিকল্পগুলি চয়ন করুন
  • আপনার পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ করুন এবং Amend commitবিকল্পটি পরীক্ষা করতে ভুলবেন না

4
এটি প্রকৃতপক্ষে সহজতম উপায় এবং আমি এটিকে সর্বনিম্ন চাপ এবং ত্রুটির প্রবণ বলে মনে করি।
davrog10

4
আমি পরামর্শ দিচ্ছি যে পদক্ষেপ 3 এ সমস্ত পরিবর্তন ইতিমধ্যে প্রতিশ্রুতিবদ্ধ হওয়ার জন্য স্থির করে রাখার Softপরিবর্তে একটি বিকল্প চয়ন করা ভাল Mixed
প্রভিসটা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.