[git] আমি কিভাবে একটি স্থানীয় গিট শাখা নামকরণ করবেন?



14 Answers

git branch -m old_branch_name new_branch_name

উপরের কমান্ডটি আপনার শাখার নাম পরিবর্তন করবে তবে আপনাকে পুনঃনামিত শাখাটি ব্যবহার করে খুব সতর্কতা অবলম্বন করতে হবে, কারণ এটি এখনও সম্পর্কিত পুরানো আপস্ট্রিম শাখাটি, যদি থাকে তবে তা ব্যবহার করবে।

আপনার স্থানীয় শাখাটি নতুন_ব্রাঞ্চ_নাম (উদাহরণের নাম) -এ নামকরণের পরে আপনি মাস্টারে কিছু পরিবর্তন ধাক্কা দিতে চান:

git push origin new_branch_name:master (এখন পরিবর্তন প্রধান শাখায় যাবে তবে আপনার স্থানীয় শাখার নাম new_branch_name)

আরো বিস্তারিত জানার জন্য, " গিটে আপনার স্থানীয় শাখার নামটি কীভাবে পুনঃনামকরণ করবেন তা দেখুন।"

Question

স্থানীয় এবং রিমোট গিট রিপোজিটরির জন্য মাস্টার শাখাকে পুনঃনামকরণে বর্ণিত হিসাবে আমি একটি রিমোট শাখাটির নামকরণ করতে চাই না।

আমি কিভাবে একটি স্থানীয় শাখার নামকরণ করতে পারি যা রিমোট শাখায় ঢোকানো হয়নি?




শাখা পুনঃনামকরণ করুন:

git branch -m old_branchname new_branchname

এখানে -m বিকল্পটির দীর্ঘ নাম --move। তাই আমরা ব্যবহার করতে পারেন

git branch --move old_branchname new_branchname

আপনি যদি বর্তমান শাখার নামকরণ করতে চান তবে এটি ব্যবহার করুন।

mohideen@dev:~/project/myapp/sunithamakeup$ git branch 
  master
  master0
  new_master
  test
* test1
mohideen@dev:~/project/myapp/sunithamakeup$ git branch -m test1 test
fatal: A branch named 'test' already exists.
mohideen@dev:~/project/myapp/sunithamakeup$ git branch -M test1 test
mohideen@dev:~/project/myapp/sunithamakeup$ git branch 
  master
  master0
  new_master
* test
mohideen@dev:~/project/myapp/sunithamakeup$ 

অথবা

git branch -m new_branchname

আপনি যদি এই পরিবর্তনগুলি দূরবর্তীতে সরাতে চান তবে নিম্নলিখিতটি ব্যবহার করুন।

git branch -move new_branchname

এটি old_branchname দূরবর্তী শাখাটি মুছে দেবে এবং নতুন_ব্রানচেন স্থানীয় শাখাকে ধাক্কা দেবে।

git push origin :old_branchname new_branchname

এটি new_branchname স্থানীয় শাখার জন্য আপস্ট্রিম শাখাটি পুনরায় সেট করবে।




গিট শাখার নাম ব্যবহার করে করা যেতে পারে

  1. git branch -m oldBranch newBranch

  2. git branch -M oldBranch ExistingBranch

-এম এবং এম মধ্যে পার্থক্য,

-এম: যদি আপনার শাখার নাম পরিবর্তন করে আপনার শাখার নামকরণের চেষ্টা করে -এম ব্যবহার করে - এটি একটি ত্রুটি বাড়াবে বলে শাখাটি ইতিমধ্যেই বিদ্যমান। আপনি অনন্য নাম দিতে হবে।

কিন্তু,

-এম: এটি আপনাকে প্রদত্ত নামের সাথে পুনঃনামকরণ করতে সহায়তা করবে এমনকি এটি বিদ্যমান। তাই বিদ্যমান শাখার সাথে সম্পূর্ণরূপে ওভাররাইট করা হবে ...

এখানে গিট টার্মিনাল উদাহরণ,

git push origin -u new_branchname



বিশেষ করে প্রশ্নের উত্তর দেওয়ার চেষ্টা করছেন (অন্তত শিরোনাম)।

আপনি স্থানীয় শাখার নামকরণ করতে পারেন, তবে দূরবর্তী স্থানে পুরানো নামটি ট্র্যাক করে রাখে।

git branch -m old_branch new_branch
git push --set-upstream origin new_branch:old_branch

এখন, যখন আপনি git push চালান, দূরবর্তী old_branch ref আপনার স্থানীয় new_branch দিয়ে আপডেট করা হয়।

আপনি এই কনফিগারেশন জানেন এবং মনে আছে । তবে আপনার কাছে রিমোট শাখার নামের জন্য পছন্দ না থাকলে এটি উপকারী হতে পারে, তবে আপনি এটি পছন্দ করেন না (ওহ, আমি বলতে চাচ্ছি যে, এটি আপনার পছন্দ না এমন একটি ভাল কারণ রয়েছে!) এবং একটি ক্লিয়ারার পছন্দ করে আপনার স্থানীয় শাখা জন্য নাম।

ফেচ কনফিগারেশন দিয়ে বাজানো, আপনি এমনকি স্থানীয় দূরবর্তী রেফারেন্স পুনঃনামকরণ করতে পারেন। অর্থাৎ, refs/remote/origin/new_branch রেফার refs/remote/origin/new_branch রেফার পয়েন্টার রয়েছে, যা মূলত old_branch । যাইহোক, আমি আপনার মন নিরাপত্তার জন্য, এই অত্যন্ত নিরুৎসাহিত।




শাখাটির নামকরণের পদক্ষেপ এখানে দেওয়া হল:

1. switch to branch which needs to be renamed
2. git branch -m <new_name>
3. git push origin :<old_name>
4. git push origin <new_name>:refs/heads/<new_name>

EDIT (12/01/2017): আপনি কমান্ড git status চালান এবং নতুন তৈরি শাখাটি তার নিজস্ব রেফারেন্সটি নির্দেশ করে এবং পুরোনো নয় তা নিশ্চিত করুন। যদি আপনি পুরানো শাখাটির রেফারেন্সটি খুঁজে পান তবে আপনাকে এটির প্রবাহটি ব্যবহার করে সেটিকে আনসেট করতে হবে:

git branch --unset-upstream



আপনি যদি বর্তমান শাখাটির নাম পরিবর্তন করতে চান তবে চালান:

git branch -m [old_branch] [new_branch]

আপনি পুরানো রিমোট শাখা মুছে ফেলতে চান, চালানো:

git push origin :[old_branch]

আপনি যদি পুরানো রিমোট শাখা মুছতে চান এবং একটি নতুন দূরবর্তী শাখা তৈরি করতে চান তবে চালান:

git push origin :old_branch new_branch



যদি তুমি চাও:

  • git branch -m <oldname> <newname> repository পুনঃনামকরণ করুন, run: git branch -m <oldname> <newname>
  • পুরানো শাখাটি মুছুন: git push origin: old-name new-name
  • এটি ব্যবহার করে git commit <newname> : git commit <newname>
    • এবং তারপর ব্যবহার করে ধাক্কা: git push origin new_branch_name:master
  • আপনি স্থিতি চেক করতে চান তাহলে git status ব্যবহার করুন
  • আপনি চেক আউট করতে চান তাহলে ব্যবহার করুন: git checkout



উত্তরগুলি এতদূর সঠিক হয়েছে তবে এখানে কিছু অতিরিক্ত তথ্য রয়েছে: একজন 'শাখা' (সরানো) সহ একটি শাখাটির নামকরণ করতে পারেন, তবে একজনকে সতর্কতা অবলম্বন করতে হবে, কারণ 'M' ইতিমধ্যে একই নামের সাথে শাখা। এখানে 'গিট-শাখা' ম্যান পৃষ্ঠা থেকে উদ্ধৃতি রয়েছে:

একটি-এম বা -এম বিকল্পের সাথে, <oldbranch> নামকরণ করা হবে <newbranch> । যদি <oldbranch> এর সাথে সংশ্লিষ্ট রিফ্লগ থাকে তবে এটি নতুন নাম <newbranch> নামকরণ করা হয় এবং শাখা পুনঃনামকরণ মনে রাখার জন্য একটি রিফ্লগ এন্ট্রি তৈরি করা হয়। যদি <newbranch> বিদ্যমান থাকে, <newbranch> পুনর্নাম ঘটতে বাধ্য করতে হবে।




যেহেতু আপনি কোনও রিমোট সার্ভারে শাখাটি মুছতে চান না তবে, এই উদাহরণটি উপকারী হবে:

ধরুন আপনার একটি বিদ্যমান শাখা আছে যা "মাই-হট-ফিচার" নামে পরিচিত এবং আপনি এটি "ফিচার -15" এ পুনঃনামকরণ করতে চান।

প্রথম, আপনি আপনার স্থানীয় শাখা পরিবর্তন করতে চান। এটি সহজ হতে পারে না:

git branch -m my-hot-feature feature-15

আরো তথ্যের জন্য, আপনি স্থানীয়ভাবে এবং গিটে একটি শাখা পুনঃনামকরণের জন্য দূরবর্তী অবস্থান পরিদর্শন করতে পারেন।




// git branch -m <oldname> <newname>

$ git branch -m demo test

অথবা

// git branch -m <newname>

$ git branch -m test



আমি নির্বোধভাবে একটি হাইফেন দিয়ে শুরু একটি শাখা নামকরণ, এবং তারপর মাস্টার চেক আউট। আমি আমার শাখা মুছে ফেলতে চাইনি, আমি এতে কাজ করেছিলাম।

এগুলির মধ্যে কোনটিই কাজ করেনি:

git checkout -dumb-name

git checkout -- -dumb-name

" গুলি, গুলি এবং \ গুলি কোন সাহায্য করেনি। git branch -m কাজ করে না।

এখানে আমি অবশেষে কিভাবে এটি সংশোধন করা হয়েছে। আপনার কাজের কপি এর। গিট / রেফ / হেডগুলিতে যান, ফাইল নামটি "ডাম্ব-নাম" খুঁজুন, শাখাটির হ্যাশ পান। তারপরে এটি চেক আউট করবে, একটি সান নাম দিয়ে একটি নতুন শাখা তৈরি করবে এবং পুরানোটি মুছে ফেলবে।

git checkout {hash}
git checkout -b brilliant-name
git branch -d -- -dumb-name



সম্ভবত অন্যদের দ্বারা উল্লিখিত, এই শাখার নামকরণ একটি মামলা দ্বিধা করা হবে।

আপনার যদি এমন একটি পরিস্থিতি থাকে তবে আমি অনুমান করতে পারি যে আপনি উইন্ডোজগুলিতে আছেন যা আপনাকে এটিকেও নেতৃত্ব দেবে:

$ git branch -m CaseSensitive casesensitive
fatal: A branch named 'casesensitive' already exists.

তারপর আপনি একটি মধ্যবর্তী পদক্ষেপ করতে হবে:

$ git branch -m temporary
$ git branch -m casesensitive

বেশি না.




  1. আপনার স্থানীয় শাখা নাম পরিবর্তন করুন।

আপনি যদি শাখার নাম পরিবর্তন করতে চান তবে:

git branch -m new-name

যদি আপনি একটি ভিন্ন শাখায় থাকেন:

git branch -m old-name new-name
  1. পুরাতন নাম রিমোট শাখা মুছে দিন এবং নতুন নাম স্থানীয় শাখা ধাক্কা।

git push origin :old-name new-name

  1. নতুন নাম স্থানীয় শাখা জন্য আপস্ট্রিম শাখা রিসেট করুন। শাখায় স্যুইচ করুন এবং তারপর:

git push origin -u new-name

অথবা এটি করার একটি দ্রুত উপায়ের জন্য, আপনি এই 3 টি পদক্ষেপগুলি ব্যবহার করতে পারেন:

# স্থানীয়ভাবে শাখা পুনঃনামকরণ

git branch -m old_branch new_branch  

# পুরানো রিমোট শাখা মুছুন

git push origin :old_branch  

# নতুন শাখাটি পুশ করুন, নতুন দূরবর্তী ট্র্যাকের জন্য স্থানীয় শাখা সেট করুন

git push --set-upstream origin new_branch   

রেফারেন্স: https://www.w3docs.com/snippets/git/how-to-rename-git-local-and-remote-branches.html




এই কমান্ডটি ব্যবহার করে শাখাটি পুনঃনামকরণ করুন:

git branch -m [old_branch_name] [new_branch_name]

-m : এটি নামান্তর / শাখা চালায়। যদি ইতিমধ্যে একটি শাখা আছে, আপনি একটি ত্রুটি পাবেন।

যদি ইতিমধ্যে একটি শাখা আছে এবং আপনি সেই শাখার সাথে পুনরায় নামকরণ করতে চান তবে ব্যবহার করুন:

 git rename -M [old_branch_name] [new_branch_name]

সাহায্য সম্পর্কে আরও তথ্যের জন্য, এই কমান্ডটি টার্মিনালে ব্যবহার করুন:

git branch --help

অথবা

man git branch



অন্য বিকল্প কমান্ড লাইন ব্যবহার করা হয় না। SourceTree হিসাবে Git GUI ক্লায়েন্টগুলি SourceTree ওভারফ্লোতে সর্বাধিক দেখা SourceTree মতো SourceTree এমন অনেক সিন্ট্যাক্টিক লার্নিং বক্ররেখা / ব্যথা বহন করে।

SourceTree তে, বাম দিকের "শাখাগুলি" প্যানেলে যেকোনো স্থানীয় শাখায় ডান ক্লিক করুন এবং "পুনঃনামকরণ করুন" নির্বাচন করুন।




Related