আপনার তালিকাভুক্ত পদক্ষেপগুলি কাজ করবে, তবে আরও দীর্ঘ উপায় যা আপনাকে আরও বিকল্প দেয়:
git checkout dmgr2 # gets you "on branch dmgr2"
git fetch origin # gets you up to date with origin
git merge origin/master
fetchকমান্ড যেকোনো সময়ে সম্পন্ন করতে পারার আগে merge, অর্থাত্, আপনি ক্রম অদলবদল করতে পারেন আনা এবং চেকআউট, কারণ fetchমাত্র দূরবর্তী নামে (ওভার যায় origin) এবং এটি বলছে: "গিম্মি সবকিছু আপনি যে আমি না আছে ", অর্থাত্, সমস্ত শাখায় সমস্ত কমিট করে। এগুলি আপনার সংগ্রহস্থলে অনুলিপি করা হয় তবে রিমোটে অবস্থিত origin/branchকোনও শাখার জন্য নামকরণ branchকরা হয়।
এই মুহুর্তে আপনি যে কোনও ভিউয়ার ( git log, gitkইত্যাদি) ব্যবহার করতে পারেন যে "তাদের কাছে কী আছে" যা আপনার নেই এবং এটি বিপরীতে। কখনও কখনও এটি শুধুমাত্র উষ্ণ ফাজি অনুভূতির জন্য দরকারী ("আহ, হ্যাঁ, এটি আসলে যা আমি চাই") এবং কখনও কখনও এটি কৌশলগুলি সম্পূর্ণরূপে পরিবর্তনের জন্য কার্যকর ("ওহো, আমি এখনও সেই জিনিসটি চাই না")।
অবশেষে, mergeকমান্ড দেওয়া কমিট, যা আপনি যেমন নাম দিতে পারেন লাগে origin/master, এবং যাহা এটা যখন আপনি চালাতে উপর, আনতে যাই হোক না কেন শাখা আপনি হয় যে কমিট এবং তার পূর্বপুরুষদের লাগে merge। আপনি fast োকাতে --no-ffবা --ff-onlyএকটি ফাস্ট-ফরোয়ার্ড প্রতিরোধ করতে পারেন , বা যদি পছন্দ হয় তবেই যদি ফলাফলটি দ্রুত অগ্রসর হয় তবেই মার্জ করতে পারেন।
আপনি যখন ক্রমটি ব্যবহার করবেন:
git checkout dmgr2
git pull origin master
pullকমান্ড নির্দেশ করে চালানোর জন্য Git git fetch, এবং তারপর নৈতিক সমতুল্য git merge origin/master। তাই এই হল প্রায় হাতে দুই ধাপ করছেন হিসাবে একই, কিন্তু কিছু সূক্ষ্ম পার্থক্য যে সম্ভবত খুব আপনাকে বিষয়ে না হয়। (বিশেষত fetchদ্বারা চালিত পদক্ষেপটি কেবলমাত্র পুনরায়pull নিয়ে আসে এবং এটি আপনার রেপোতে রেফটিকে আপডেট করে না: 1 কোনও নতুন প্রতিশ্রুতিবদ্ধ যা কেবল বিশেষ রেফারেন্স দ্বারা উল্লেখ করা হয় wind ) origin/masterFETCH_HEAD
আপনি যদি আরও স্পষ্টত ব্যবহার করেন git fetch origin(তবে optionচ্ছিকভাবে চারপাশে দেখুন) এবং তারপরে git merge origin/masterক্রম, আপনি নেটওয়ার্কটি জুড়ে masterশুধুমাত্র একটি fetchরান নিয়ে রিমোটের সাথে নিজের স্থানীয়টিকে আপ টু ডেট আনতে পারেন :
git fetch origin
git checkout master
git merge --ff-only origin/master
git checkout dmgr2
git merge --no-ff origin/master
এই ক্ষেত্রে.
1 এই দ্বিতীয় অংশটি পরিবর্তন করা হয়েছে - আমি বলি "স্থির" - গিট 1.8.4-এ, যা এখন "দূরবর্তী শাখা" রেফারেন্সকে সুবিধাবাদীভাবে আপডেট করে। (রিলিজ নোটগুলি যেমন বলেছিল, আপডেটটি এড়িয়ে যাওয়ার ইচ্ছাকৃত নকশার সিদ্ধান্ত ছিল, তবে এটি প্রমাণিত হয়েছে যে আরও লোকেরা এই গিট আপডেটটি পছন্দ করে। আপনি যদি পুরানো রিমোট-ব্রাঞ্চ এসএইএ -১ চান, এটি ডিফল্টে সংরক্ষণ করা হবে) , এবং এইভাবে পুনরুদ্ধারযোগ্য থেকে পুনরুদ্ধারযোগ্য This এটি প্রবাহের রিবাসগুলি সন্ধানের জন্য একটি নতুন গিট 1.9 / 2.0 বৈশিষ্ট্য সক্ষম করে)