পার্ফারিয়াল একটি মার্জ বাতিল কিভাবে?


85

আমি একত্রিত হলাম আমি ফিরে যেতে চাই আবার চেষ্টা করুন।
একীকরণের প্রতিশ্রুতিবদ্ধ হওয়ার পূর্বে কোনও উপায় কী আবার ফিরে আসার আছে?

hg revertআমি যা চাই তা করি না, এটি কেবল ফাইলগুলির পাঠ্যকে উল্টে দেয়। মার্চুরিয়াল আমার একত্রিত হওয়ার দ্বিতীয় প্রচেষ্টাটিকে বাতিল করে দেয় এবং অভিযোগ করে যে মূল একত্রীকরণটি এখনও নিরীক্ষিত।

কোনও hg mergeকমান্ডের পরে মার্জটি পূর্বাবস্থায় ফেলার কোনও উপায় আছে তবে এটি প্রতিশ্রুতিবদ্ধ হওয়ার আগে?


উত্তর:


107

hg update -C <one of the two merge changesets>


সহজ, দক্ষ এবং, আমি মনে করি, এটি করার সর্বোত্তম উপায়! : ডি
এরিক-কার্ল

@ জনল - হ্যাঁ, এর --cleanপ্রতিশব্দ -C। কোন পরিবর্তনটি .উল্লেখ করবে তা আমি নিশ্চিত নই , তবে এটি সবসময় দুটি সংযুক্ত রূপান্তরগুলির মধ্যে একটি হবে।
সর্বনাশ

4
@ সর্বজনীন, .পরিষ্কার করা মার্জ করা শুরু করার আগে আপনি যা যা সংশোধন করেছিলেন তা পরিষ্কার করা উচিত। সুতরাং আপনি যদি r42 তে ছিলেন, r43 এর সাথে একত্রীকরণের চেষ্টা করেছেন, ব্যর্থ হয়েছেন, পরিষ্কার হয়ে গেছেন, আপনি কোনও প্রাথমিক r42 এ ফিরে আসতে পারেন।
জন এল।

4
hg update --clean.অন্তর্নিহিত ডিফল্ট হিসাবে মনে হয় কাজ করে - যদিও এটি স্পষ্টভাবে নথিভুক্ত করা হয়নি।
জোয়েল পুররা

@ জোয়েলপুরা: একীকরণের .প্রসঙ্গে অর্থটি অস্পষ্ট।
সর্বময়

39

আপনি এটি করার পরে hg merge, কিন্তু আগে hg commit, আপনার কার্যকরী অনুলিপিটির দুটি পিতা-মাতা রয়েছে: প্রথম পিতামাতা হ'ল সংযোজনের আগে আপনি যে পরিবর্তনটি আপডেট করেছিলেন এবং দ্বিতীয় পিতা বা মাতা সেই রূপান্তর সেটটি যার সাথে আপনি মার্জ করছেন। hg mergeযতক্ষণ না আপনার কাজের অনুলিপিটির দু'জন পিতা-মাতা থাকে ততক্ষণ মার্চুরিয়াল আপনাকে আর করতে দেবে না ।

কীভাবে এগিয়ে যেতে হবে আপনার দুটি বিকল্প রয়েছে:

  1. আপনি যদি মার্জটি বাতিল করতে চান এবং যেখানে শুরু করেছিলেন সেখানে ফিরে যেতে চান, তবে করুন

    hg update -C .
    

    এটি প্রথম পিতামাতার সাথে মেলে কাজের কপিটি আপডেট করবে: .সর্বদা কার্যকরী অনুলিপিটির প্রথম পিতামাতাকে চিহ্নিত করে।

  2. আপনি যদি কিছু ফাইল পুনরায় মার্জ করতে চান তবে করুন

    hg resolve fileA fileB
    

    এটি মার্জ সরঞ্জামগুলি পুনরায় আরম্ভ করবে ঠিক যেমনটি আপনি করেছিলেন hg mergehg mergeরেজাল্ট কমান্ডটি ভাল যদি আপনি সময়টি জানতে পারেন যে আপনার মার্জ সরঞ্জামগুলি খারাপভাবে কনফিগার করা হয়েছে: কনফিগারেশনটি ঠিক করুন এবং চালান hg resolve --all। আপনি hg resolveএকত্রীকরণের সাথে সন্তুষ্ট না হওয়া পর্যন্ত আপনি যতবার চান চালাতে পারবেন ।

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