গিট রিমোট শাখা যোগ করুন


139

আমি একটি রিমোট এবং সেই রিমোটের একটি শাখা যুক্ত করতে চাই।

আমি করেছি git remote add <newname> <url>, তারপর করেছি git fetch --allকিন্তু git branch -aরিমোটের কোনও শাখা দেখায় না। আমার .git / কনফিগারেশন যোগ করা দূরবর্তী দেখায়।

কেউ দয়া করে আমাকে সাহায্য করতে পারেন?


2
তুমি কি করলে git fetch remote branch:branch && git co branch?
সামি দিনদানে

উত্তর:


280

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

"গিথুব" নামে একটি রিমোট তৈরি করা:

git remote add github git://github.com/jdoe/coolapp.git
git fetch github

সমস্ত দূরবর্তী শাখা তালিকাভুক্ত করুন:

git branch -r
  github/gh-pages
  github/master
  github/next
  github/pu

গিথুবের দূরবর্তী শাখা (পু) থেকে একটি নতুন স্থানীয় শাখা (পরীক্ষা) তৈরি করুন:

git branch test github/pu
git checkout test

স্থানীয় শাখার (পরীক্ষা) সাথে গিথুবের প্রত্যন্ত শাখা (পু) থেকে পরিবর্তনগুলি মার্জ করুন:

git fetch github
git checkout test
git merge github/pu

স্থানীয় শাখা (পরীক্ষা) থেকে গিথুবের দূরবর্তী শাখা (পু) আপডেট করুন:

git push github test:pu

রিমোটে একটি নতুন শাখা তৈরি করা দূরবর্তী শাখা আপডেট করার মতো একই সিনট্যাক্স ব্যবহার করে। উদাহরণস্বরূপ, স্থানীয় শাখা (পরীক্ষা) থেকে গিথুবে নতুন দূরবর্তী শাখা (বিটা) তৈরি করুন:

git push github test:beta

গিথুব থেকে দূরবর্তী শাখা (পু) মুছুন:

git push github :pu

নাম উল্লেখ না করে কী স্থানীয় শাখা তৈরি করার কোনও উপায় আছে, যাতে এটি স্বয়ংক্রিয়ভাবে দূরবর্তী শাখার মতো একই নামটি গ্রহণ করে?
ডাবসলো

@Dubslow git checkout --track github/puদেখুন এখানে
Hinrich

25

আপনি যদি আপনার রিমোট সেটআপটি সঠিকভাবে পেয়েছেন এবং সঠিক অনুমতি পেয়েছেন কিনা তা পরীক্ষা করে দেখতে পারেন

git ls-remote origin

যদি আপনি আপনার দূরবর্তীটিকে "উত্স" বলে থাকেন। আপনি যদি কোনও ত্রুটি পান তবে সম্ভবত আপনার সুরক্ষা সঠিকভাবে সেট আপ করা নেই যেমন উদাহরণ হিসাবে গিথুবটিতে আপনার সর্বজনীন কী আপলোড করা। যদি জিনিসগুলি সঠিকভাবে সেট আপ হয় তবে আপনি দূরবর্তী উল্লেখগুলির একটি তালিকা পাবেন। এখন

git fetch origin

প্লাগযুক্ত নেটওয়ার্ক কেবলের মতো অন্য কোনও সমস্যা ব্যতীত কাজ করবে।

এটি সম্পন্ন হয়ে গেলে আপনি উপরের কমান্ডের সাথে তালিকাবদ্ধ যে কোনও শাখা পেতে পারেন

git checkout some-branch

এটি দূরবর্তী শাখা হিসাবে একই নামের একটি স্থানীয় শাখা তৈরি করবে এবং এটি পরীক্ষা করে দেখবে।


6

@ স্যামি ডিন্ডনে ওপিতে দেওয়া মন্তব্যে যা বলেছিল তা আমি পরীক্ষা করেছিলাম।

আমি বিশ্বাস করি এটি কার্যকর হয়, চেষ্টা করুন

git fetch <remote_name> <remote_branch>:<local_branch>
git checkout <local_branch>

এখানে এমন একটি কল্পিত রিমোট রিপোজিটরির উদাহরণ দেওয়া হয়েছে যার fooসাথে একটি শাখা নাম দেওয়া হয়েছে barযেখানে আমি barরিমোট ট্র্যাকিংয়ের একটি স্থানীয় শাখা তৈরি করেছি :

git fetch foo bar:bar
git checkout bar

5

স্থানীয় রেপো তৈরি এবং পরিবর্তনগুলি নতুন দূরবর্তী শাখায় ঠেকানোর সম্পূর্ণ প্রক্রিয়া এখানে

  1. স্থানীয় সংগ্রহস্থল তৈরি করা হচ্ছে: -

    প্রাথমিকভাবে ব্যবহারকারীরা স্থানীয় গিট সংগ্রহস্থল তৈরি করতে পারেন।

    $ git init : - এটি স্থানীয় ফোল্ডারটিকে গিট সংগ্রহস্থল হিসাবে তৈরি করবে,

  2. দূরবর্তী শাখায় লিঙ্ক করুন : -

    এখন চ্যালেঞ্জটি হল স্থানীয় গিট সংগ্রহস্থল রিমোট মাস্টার ব্রাঞ্চের সাথে যুক্ত।

    $ git remote add RepoName RepoURL

    ব্যবহার: গিট রিমোট অ্যাড []

  3. রিমোট পরীক্ষা করুন

    $ git remote show ---> দূরবর্তী নাম প্রদর্শন করুন

    $ git remote -v ---> দূরবর্তী শাখা প্রদর্শন করুন

  4. এখন রিমোটে পুশ করুন

    $git add . ----> গিট স্টেজড হিসাবে সমস্ত ফাইল এবং ফোল্ডার যুক্ত করুন

    $git commit -m "Your Commit Message" - - -> বার্তাটি কমিট করুন

    $git push - - - -> পরিবর্তনগুলিকে প্রবাহে চাপ দিন


গিট ব্যবহারের সাধারণ ক্ষেত্রে কেবল এই নির্দেশাবলী। এই উত্তরটিতে আমি যে প্রশ্ন জিজ্ঞাসা করা হচ্ছে তার সাথে সুনির্দিষ্ট কিছু দেখছি না।
হ্যাক-আর

2

যদি দূরবর্তী শাখাটি ইতিমধ্যে বিদ্যমান থাকে তবে আপনি (সম্ভবত) সাথে পালিয়ে যেতে পারবেন ..

git checkout branch_name

এবং গিটটি স্বয়ংক্রিয়ভাবে একই নামের সাথে দূরবর্তী শাখার ট্র্যাক করতে সেট আপ হবে।

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