গিটার সহ আমি কীভাবে আমার শাখাটি আপডেট রাখতে পারি?


126

আমার মাস্টারে একটি বাগ ফিক্স রয়েছে এবং আমিও চাই যে আমার শাখাটি এই বাগ ঠিক করতে পারে। gitআমি কোন আদেশ ব্যবহার করব?

উত্তর:


172

ধরে নিই আপনি মাস্টার এর সমস্ত পরিবর্তন নিয়ে ভাল আছেন, আপনি যা চান তা হ'ল:

git checkout <my branch>

কার্যকারী গাছটিকে আপনার শাখায় স্যুইচ করতে; তারপর:

git merge master

মাস্টার সমস্ত পরিবর্তন আপনার সাথে একীভূত করতে।


5
এবং এটি কেবল আমার শাখা থেকে আমার শাখায় পরিবর্তনগুলি যুক্ত করেছে এবং মাস্টারকে একা ফেলেছে, সঠিক?
নিক হাববার্ড

3
@ দুর্দান্ত - এটি কেবল বাগ ফিক্সই নয়, মাস্টার থেকে সমস্ত কমিট আনবে। আপনি যদি এটি করতে চান এটি নিশ্চিত হন।
মনোজাল্ড

12
@ নিক - সঠিক, এটি মাস্টারকে পরিবর্তন করে না।
জন ডটি

16
স্থানীয় মাস্টার শাখাটি আপ-টু-ডেট রয়েছে তা নিশ্চিত করার জন্য প্রাথমিক "গিট চেকআউট মাস্টার; গিট পুল" সুপারিশ করা ভাল হতে পারে। সাধারণত সুস্পষ্ট, তবে ...
মাইকডাব্লু

মাস্টার চেকআউট / মার্জ শর্টকাট হিসাবে, আপনি সার্ভার মাস্টার টানতে / স্থানীয় চেক-আউট শাখায় মার্জ করতে "গিট পুল অরিজিন মাস্টার" করতে পারেন?
ব্যবহারকারী 1172173

66

যদি আপনার শাখাটি কেবল স্থানীয় হয় এবং সার্ভারে ধাক্কা না দেওয়া হয় তবে ব্যবহার করুন

git rebase master

অন্যথায়, ব্যবহার করুন

git merge master

18
কারণ এটি প্রতিশ্রুতিবদ্ধ ইতিহাসটি পরিবর্তন করে এবং আপনি সার্ভারে পরিবর্তিত অনুসন্ধানের ইতিহাসকে ঠেলাতে চান না।
চেতন

1
যদি আপনি কোনও এসএনএন সংগ্রহস্থলকে আপনার দূরবর্তী সংগ্রহস্থল হিসাবে ব্যবহার করেন - git svnতবে the ততক্ষণে git rebase masterযাওয়ার উপায়, রৈখিক ইতিহাস রাখা, যা এসএনএন বোঝে।
অ্যালোনডো

15

নির্দিষ্ট বাগ ফিক্স কমিট (গুলি) পেতে আপনি চেরি-পিক ব্যবহার করতে পারেন

$ git checkout branch
$ git cherry-pick bugfix

চেরি-পিক কেবল তখনই কাজ করবে যদি বাগফিক্স একটি শাখা ছিল যা আবার মাস্টার হিসাবে একীভূত হয়েছিল?
প্রশিত গোবিন

1
আপনি চেরি-বাছাই করতে পারেন, তবে তারপরে শাখাটি মাস্টারে মার্জ করার পরে (যখন শাখাটি প্রস্তুত হবে) আপনার কাছে ইতিহাসে দুবার বাগ-ফিক্সিং কমিট থাকবে।
গৌথির

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