tutorial - gitlab




GitHub মধ্যে কাঁটাচামচ মধ্যে মার্জ (2)

আমি একটি GitHub সংগ্রহস্থল forked। তারপর আমি আমার ফর্ক কিছু পরিবর্তন ধাক্কা। তারপর মূল সংগ্রহস্থল আমার পরিবর্তন এবং কিছু অন্যদের একত্রিত। এখন, আমি অনুপস্থিত যে পরিবর্তনগুলি একত্রিত করতে চাই। আমি ধাক্কা পরে একটি সহজ পুল চেষ্টা, কিন্তু এই ফলন আমার সদৃশ commits। এটা করার সেরা উপায় কি?

https://code.i-harness.com


প্রতিটি রিপোজিটোরির জন্য সম্ভবত আপনার "রিমোট" রয়েছে। আপনি এক দূরবর্তী থেকে টান এবং অন্যান্য ধাক্কা প্রয়োজন।

আপনি মূলত আপনার ফর্ক থেকে ক্লোন, যে দূরবর্তী "মূল" বলা হবে। যদি আপনি এটি ইতিমধ্যে যোগ না করে থাকেন, তবে আপনাকে অন্য রিমোটরিটি অন্য দূরবর্তী হিসাবে যুক্ত করতে হবে:

git remote add firstguy git://github.com/firstguy/repo.git

যে সব সেট আপ করার পরে, আপনি অবশ্যই করতে সক্ষম হবে

git pull firstguy master
git push origin

মনে রাখবেন, git pull এমন একটি ম্যাক্রোর চেয়ে বেশি কিছু নয় যা git fetch এবং git merge , যাতে ক্রম। আপনাকে শুধুমাত্র প্রথম লোকের সংগ্রহস্থল থেকে কৃতিত্বের তালিকা আনতে হবে এবং তারপরে তার শাখাকে আপনার গাছের মধ্যে একত্রিত করতে হবে। মার্জিং উভয় শাখা আপনার commits সঙ্গে সঠিক জিনিস করা উচিত।

GitHub, সব তার চিরতরে চমত্কারতা, অবশ্যই, আপনি একটি শর্টকাট দেয়। আপনার ফর্কের ফর্মে একটি "ফাস্ট-ফরওয়ার্ড" বাটন রয়েছে যা আপনি সম্পূর্ণভাবে অন্য দিকে মার্জ হয়ে গেলে আপনার ফর্কটি ধরতে ব্যবহার করতে পারেন।


সুতরাং উপরে গৃহীত উত্তর আমার জন্য পুরোপুরি কাজ করে না। যেমন, এটি যখন কাজ করেছিল তখন মূল গিথুব লেখকের লিংক হারাতে লাগলো, এবং তারপরে তার পরে আর কাজ বলে মনে হয় না। আমি মনে করি সমস্যাটি উত্তরটি দূরবর্তী নাম এবং শাখাটির মধ্যে ছেড়ে দেওয়া হয়েছে। সুতরাং এটি রিমোট থেকে মাস্টার নামক একটি শাখা আনবে, তবে তার সাথে কিছু করতে পারবে না। সত্যিই কেন নিশ্চিত না।

এখানে github তাদের সাইট থেকে সুপারিশ উপায়।

একবার আপনি আপনার ফোরকড রেপো ক্লোন করেছেন, আপনাকে পূর্বের উত্তরের মত একটি দূরবর্তী বিন্দুটি যুক্ত করতে হবে। তারা এটি আপস্ট্রিম কল করতে চান, কিন্তু এটা কোন ব্যাপার না।

git remote add upstream git://github.com/octocat/Spoon-Knife.git

তারপর আপনি আনা

git fetch upstream

এবং আপনি মার্জ করার জন্য উপলব্ধ সংস্করণ দেখতে পাবেন

From git://github.com/octocat/Spoon-Knife.git
 * [new branch]      gh-pages   -> upstream/gh-pages
 * [new branch]      master     -> upstream/master

তারপরে আপনাকে কেবল সেই শাখাটি চয়ন করতে হবে যা আপনি মার্জ করতে চান। মনে রাখবেন এটি স্থানীয় শাখার নয়, এটি রিমোটগুলির অধীনে সংরক্ষণ করা হয়। তবে আপস্ট্রিম / মাস্টার (যা অনুমোদিত) নামে একটি স্থানীয় শাখা নেই তবে আপনাকে নীচের লাইনের সাথে মিলিত হওয়া উচিত:

git merge upstream/master

বিকল্পভাবে আপনি এই লাইনের সাথে fetch / merge শর্টকাট করতে পারেন (অন্তত প্রাথমিক fetch পরে):

git pull upstream/master




github