আপনার ফর্ক আপডেট রাখা:
GitHub-এ একটি সংগ্রহস্থলকে ফোরক করা একটি সাধারণ অভ্যাস যা বিকাশকারীদের পরিবর্তন করে এবং পুল অনুরোধ জমা দিয়ে প্রকল্পগুলিতে অবদান রাখতে দেয়। যাইহোক, মূল সংগ্রহস্থলের সর্বশেষ পরিবর্তনগুলির সাথে আপনার কাঁটাটি আপডেট করা কিছুটা চ্যালেঞ্জিং হতে পারে।
এই নির্দেশিকায়, আমরা আপনাকে আসলটির সাথে আপনার কাঁটাযুক্ত সংগ্রহস্থল সিঙ্ক করার প্রক্রিয়ার মধ্য দিয়ে চলে যাব। আপনি একজন অভিজ্ঞ ডেভেলপার বা একজন নবাগত হোন না কেন, এই ধাপে ধাপে টিউটোরিয়ালটি সর্বশেষ প্রতিশ্রুতির সাথে আপনার কাঁটাচামচ বর্তমান থাকে তা নিশ্চিত করতে সাহায্য করবে।
আদেশ | বর্ণনা |
---|---|
git remote add upstream <URL> | উত্স সংগ্রহস্থল থেকে পরিবর্তনগুলি ট্র্যাক করতে 'আপস্ট্রিম' নামে একটি দূরবর্তী হিসাবে মূল সংগ্রহস্থল যুক্ত করে৷ |
git fetch upstream | অন্য রিপোজিটরি থেকে অবজেক্ট এবং রেফ ডাউনলোড করে, এই ক্ষেত্রে, আপস্ট্রিম রিমোট। |
git merge upstream/main | আপস্ট্রিম প্রধান শাখা থেকে বর্তমান শাখায় পরিবর্তনগুলিকে একীভূত করে৷ |
git push origin main | স্থানীয় প্রধান শাখা থেকে কমিট সহ দূরবর্তী সংগ্রহস্থল আপডেট করে। |
git checkout main | স্থানীয় সংগ্রহস্থলে প্রধান শাখায় সুইচ করে। |
git remote -v | রিমোট রিপোজিটরির জন্য গিট যে ইউআরএলগুলি সংরক্ষণ করেছে তা প্রদর্শন করে। |
গিট সিঙ্ক প্রক্রিয়া বোঝা
উপরে প্রদত্ত স্ক্রিপ্টগুলি ব্যবহারকারীদের তাদের কাঁটাযুক্ত গিটহাব সংগ্রহস্থলগুলি মূল উত্স সংগ্রহস্থলের সাথে সিঙ্ক করতে সহায়তা করার জন্য ডিজাইন করা হয়েছে। প্রথম স্ক্রিপ্টটি গিট কমান্ড লাইন ইন্টারফেস (সিএলআই) ব্যবহার করে। এটি আপনার কাঁটাযুক্ত সংগ্রহস্থলে নেভিগেট করে শুরু হয় এবং তারপরে একটি রিমোট নামে মূল সংগ্রহস্থল যোগ করে . এটি আপনার স্থানীয় গিট উদাহরণকে মূল উত্স সংগ্রহস্থল থেকে পরিবর্তনগুলি ট্র্যাক করার অনুমতি দেয়। আদেশ আপনার স্থানীয় শাখায় মার্জ না করে আপস্ট্রিম রিপোজিটরি থেকে সর্বশেষ পরিবর্তন আনে। এর সাথে আপনার প্রধান শাখায় স্যুইচ করে , আপনি নিশ্চিত করুন যে আপনি সঠিক শাখায় কাজ করছেন।
পরবর্তী, কমান্ড আপস্ট্রিম রিপোজিটরি থেকে আনা পরিবর্তনগুলিকে আপনার স্থানীয় প্রধান শাখায় মার্জ করে। মূল প্রকল্পের সাম্প্রতিক প্রতিশ্রুতিগুলির সাথে আপনার কাঁটাকে আপ-টু-ডেট রাখার জন্য এটি অত্যন্ত গুরুত্বপূর্ণ। অবশেষে, আদেশ নতুন মার্জ করা পরিবর্তনগুলির সাথে GitHub-এ আপনার কাঁটাযুক্ত সংগ্রহস্থল আপডেট করে। ঐচ্ছিক পদক্ষেপগুলি এই প্রক্রিয়া চলাকালীন যেকোন একত্রীকরণ দ্বন্দ্বের সমাধান করা জড়িত। দ্বিতীয় স্ক্রিপ্টটি গিটহাব ডেস্কটপ অ্যাপ্লিকেশন ব্যবহার করে একই ধরনের ওয়ার্কফ্লো প্রদান করে, যা কমান্ড লাইনের উপর গ্রাফিকাল ইন্টারফেস পছন্দ করে এমন ব্যবহারকারীদের জন্য এটি আরও অ্যাক্সেসযোগ্য করে তোলে।
আপস্ট্রিম পরিবর্তনের সাথে আপনার কাঁটাযুক্ত সংগ্রহস্থল সিঙ্ক করা হচ্ছে
গিট কমান্ড লাইন ইন্টারফেস (CLI) ব্যবহার করে
# Step 1: Navigate to your forked repository
cd path/to/your/forked-repo
# Step 2: Add the original repository as an upstream remote
git remote add upstream https://github.com/original-owner/original-repo.git
# Step 3: Fetch the latest changes from the upstream repository
git fetch upstream
# Step 4: Check out your main branch
git checkout main
# Step 5: Merge the changes from the upstream/main into your local main branch
git merge upstream/main
# Step 6: Push the updated main branch to your fork on GitHub
git push origin main
# Optional: If you encounter conflicts, resolve them before pushing
# and commit the resolved changes.
GitHub ডেস্কটপ ব্যবহার করে আপনার ফর্ক আপডেট করা হচ্ছে
GitHub ডেস্কটপ অ্যাপ্লিকেশন ব্যবহার করে
# Step 1: Open GitHub Desktop and go to your forked repository
# Step 2: Click on the "Repository" menu and select "Repository Settings..."
# Step 3: In the "Remote" section, add the original repository URL as the upstream remote
# Step 4: Fetch the latest changes from the upstream repository
# by selecting "Fetch origin" and then "Fetch upstream"
# Step 5: Switch to your main branch if you are not already on it
# Step 6: Merge the changes from the upstream/main into your local main branch
# by selecting "Branch" and then "Merge into current branch..."
# Step 7: Push the updated main branch to your fork on GitHub
# by selecting "Push origin"
# Optional: Resolve any merge conflicts if they arise and commit the changes
ফর্কড রিপোজিটরি আপডেট করা: অতিরিক্ত বিবেচনা
কাঁটাযুক্ত সংগ্রহস্থল বজায় রাখার আরেকটি গুরুত্বপূর্ণ দিক হল শাখা ব্যবস্থাপনার গুরুত্ব বোঝা। প্রায়শই, ডেভেলপাররা আলাদা আলাদা শাখায় বিভিন্ন বৈশিষ্ট্য বা ফিক্স নিয়ে কাজ করে। একটি কাঁটা সিঙ্ক করার সময়, শুধুমাত্র প্রধান শাখা আপডেট করা নয় বরং অন্যান্য সক্রিয় শাখাগুলিতে আপস্ট্রিম পরিবর্তনগুলিকে একত্রিত করাও গুরুত্বপূর্ণ। এটি পরবর্তীতে দ্বন্দ্ব এড়াতে সাহায্য করে এবং নিশ্চিত করে যে প্রকল্পের সমস্ত অংশ সর্বশেষ আপডেটের সাথে সামঞ্জস্যপূর্ণ।
অতিরিক্তভাবে, ট্যাগ এবং রিলিজ ব্যবহার করা উপকারী হতে পারে। নিয়মিতভাবে প্রতিশ্রুতি ট্যাগ করে এবং রিলিজ তৈরি করে, আপনি আপনার প্রকল্পের স্থিতিশীল সংস্করণগুলির উপর নজর রাখতে পারেন। সিঙ্ক করার সময়, কোন সংস্করণগুলিকে একীভূত করা হয়েছে এবং কোনটি এখনও আপডেট করা প্রয়োজন তা সনাক্ত করা সহজ৷ এই অনুশীলনটি একাধিক সহযোগীদের সাথে বড় প্রকল্পগুলিতে বিশেষভাবে কার্যকর।
- আমি কিভাবে একটি দূরবর্তী হিসাবে মূল সংগ্রহস্থল যোগ করতে পারি?
- কমান্ড ব্যবহার করুন মূল সংগ্রহস্থল যোগ করতে.
- কি করে করতে?
- এই কমান্ড আপস্ট্রিম রিপোজিটরি থেকে সর্বশেষ পরিবর্তনগুলিকে একত্রিত না করে ডাউনলোড করে।
- আমি কিভাবে প্রধান শাখায় সুইচ করব?
- কমান্ড ব্যবহার করুন আপনার প্রধান শাখায় স্যুইচ করতে।
- উদ্দেশ্য কি ?
- এই কমান্ডটি আপস্ট্রিম প্রধান শাখা থেকে পরিবর্তনগুলিকে আপনার স্থানীয় প্রধান শাখায় একত্রিত করে।
- আমি কিভাবে GitHub এ আমার কাঁটাযুক্ত সংগ্রহস্থল আপডেট করব?
- পরিবর্তনগুলি মার্জ করার পরে, ব্যবহার করুন GitHub এ আপনার কাঁটা আপডেট করতে।
- আমি কি আমার কাঁটা সিঙ্ক করতে গিটহাব ডেস্কটপ ব্যবহার করতে পারি?
- হ্যাঁ, গিটহাব ডেস্কটপ পরিবর্তন আনতে, মার্জ করতে এবং পুশ করার জন্য একটি গ্রাফিক্যাল ইন্টারফেস প্রদান করে।
- একত্রীকরণের সময় দ্বন্দ্ব থাকলে কী হবে?
- আপনাকে দ্বন্দ্বগুলি ম্যানুয়ালি সমাধান করতে হবে এবং তারপরে সমাধান করা পরিবর্তনগুলি করতে হবে।
- কেন আমি ট্যাগ এবং রিলিজ ব্যবহার করব?
- ট্যাগ এবং রিলিজ স্থিতিশীল সংস্করণ ট্র্যাক রাখতে সাহায্য করে এবং আপডেটগুলি পরিচালনা করা সহজ করে তোলে।
- আমার কি প্রধান ছাড়াও অন্যান্য শাখা আপডেট করতে হবে?
- হ্যাঁ, অন্যান্য সক্রিয় শাখা আপডেট করা দ্বন্দ্ব এড়াতে সাহায্য করে এবং ধারাবাহিকতা নিশ্চিত করে।
আপনার অবদানের অখণ্ডতা এবং প্রাসঙ্গিকতা বজায় রাখার জন্য আপনার কাঁটাযুক্ত সংগ্রহস্থলকে মূল সংগ্রহস্থলের সাথে সিঙ্ক্রোনাইজ করা গুরুত্বপূর্ণ। নিয়মিতভাবে আনয়ন, একত্রীকরণ এবং পরিবর্তনগুলি পুশ করার মাধ্যমে, আপনি নিশ্চিত করেন যে আপনার কাঁটা সাম্প্রতিক বিকাশের সাথে আপ-টু-ডেট থাকে। গিট কমান্ড লাইন ইন্টারফেস এবং গিটহাব ডেস্কটপের মতো সরঞ্জামগুলি ব্যবহার করা এই প্রক্রিয়াটিকে সহজ করে। উপরন্তু, অবিলম্বে একত্রীকরণ দ্বন্দ্বের সমাধান এবং ট্যাগ এবং রিলিজ ব্যবহার করার মতো সর্বোত্তম অনুশীলনগুলি গ্রহণ করা আপনার কর্মপ্রবাহ এবং সহযোগিতার দক্ষতাকে উল্লেখযোগ্যভাবে উন্নত করতে পারে।