মাস্টার সহ জিআইটি ওভাররাইট শাখা


33

আমার একটি পুরানো দেব শাখা রয়েছে যা সম্পূর্ণ পুরানো। আমি এটিকে সরাতে চাই না তবে আমি এর বিষয়গুলি সম্পূর্ণভাবে মাস্টার ব্রাঞ্চের সাথে প্রতিস্থাপন করতে চাই। অর্থ, আমি দেব_ব্রঞ্চ = মাস্টার চাই

আমি চেষ্টা করেছিলাম:

git merge -s ours dev_branch

যদিও কাজ করিনি ...

উত্তর:


55

আপনার কাছ থেকে সকল পরিবর্তন চান masterমধ্যে dev_branchতারপর,:

git checkout dev_branch
git reset --hard master

এটি কেবল তখনই কাজ করে যদি অন্য লোকেরা সংগ্রহস্থলটিকে ক্লোন না করে।

আপনি যদি dev_branchইতিমধ্যে কোনও রিমোটে ঠেলাঠেলি করেন তবে আপনাকে এটি করতে হবে:

git push --force

রিমোটে জোর-ধাক্কা দিতে। সতর্কতা: এটি এর আগে যারা ক্লোন করেছে তাদের শাখার ইতিহাসটি ভেঙে দেবে! এর পরে, অন্যান্য মানুষ করতে হবে git pull --rebaseউপর dev_branchপরিবর্তনগুলি জন্য।


আপনি পুরানো কিছুতে দেব শাখার নাম পরিবর্তন করতে পারেন এবং তারপরে masterএকই নামটি দিয়ে একটি নতুন শাখা তৈরি করতে পারেন :

git branch -m dev_branch old_dev_branch
git branch -m master dev_branch

অথবা, oursকৌশলটি ব্যবহার করুন - কেন এটি আপনার পক্ষে কার্যকর হবে না তা নিশ্চিত নয়:

git checkout master
git merge -s ours dev_branch
git checkout dev_branch
git merge master

নাম পরিবর্তনের সমাধানের সাথে, আমি মনে করি আপনি দেখতে পাবেন যে আপনি এখন dev_branchউত্সের দিকে ধাক্কা দিতে পারবেন না (যদি এটি থাকে) তবে masterস্থানীয়ভাবে আপনার আর শাখা থাকবে না ।
এইডান

ধন্যবাদ @ স্লাহ্ক! কিছু কারণে, আমার মঞ্চ শাখাটি সাধারণ মার্জ করার পরে আপডেট করা হচ্ছিল না। এটি বলতে থাকল যে আমার মঞ্চের শাখাটি আপ টু ডেট। "আমাদের" কৌশলটি ব্যবহার করা আমার জন্য এটি সমাধান করে।
স্লিপ শিনোবি

আমাদের কেবল দ্বন্দ্বপূর্ণ অংশগুলিকেই প্রভাবিত করবে, তবে তিনি শাখাকে সম্পূর্ণভাবে নবায়ন করতে চান, কেবল দ্বন্দ্বই নয় !? (এটি কমপক্ষে আমার যা করা দরকার এবং আমি কেন এই প্রশ্নটি পেয়েছি) - আমি নামটি পরিবর্তন করব!
মার্টিন মিজার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.