git - গিটহাব কি




আমি কিভাবে একটি স্থানীয় গিট শাখা নামকরণ করবেন? (20)

1. পুনঃনামকরণ

এটা যদি আপনার বর্তমান শাখা, শুধু না

git branch -m new_name

যদি এটি অন্য শাখা আপনি নামকরণ করতে চান

git branch -m old_name new_name

2. একটি নতুন রিমোট শাখা ট্র্যাক

- যদি আপনার শাখাটি ধাক্কা দেওয়া হয়, তবে পুনরায় নামকরণের পরে আপনাকে রিমোট জিট রিপোজিটরি থেকে এটি মুছে ফেলতে হবে এবং আপনার নতুন স্থানীয় একটি নতুন দূরবর্তী শাখাটি ট্র্যাক করতে বলুন:

git push origin :old_name
git push --set-upstream origin new_name

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

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


  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


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

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


আপনার বর্তমান শাখা নামকরণ করা:

git branch -m <newname>

আপনি যদি SourceTree ব্যবহার করতে ইচ্ছুক হন (যা আমি দৃঢ়ভাবে সুপারিশ করি), আপনি আপনার শাখাটিতে ডান ক্লিক করতে পারেন এবং 'পুনঃনামকরণ' চয়ন করতে পারেন।


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

git branch -m [old_branch] [new_branch]

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

git push origin :[old_branch]

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

git push origin :old_branch new_branch

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

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


উন্নত গিট ব্যবহারকারীরা ম্যানুয়ালি নামকরণ করতে পারেন:

Rename the old branch under .git/refs/heads to the new name

Rename the old branch under .git/logs/refs/heads to the new name

Update the .git/HEAD to point to yout new branch name

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

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

এখানে তিনটি ধাপ রয়েছে: একটি কমান্ড যা আপনি আপনার টার্মিনালের ভিতরে কল করতে পারেন এবং শাখা নাম পরিবর্তন করতে পারেন।

git branch -m old_branch new_branch         # Rename branch locally
git push origin :old_branch                 # Delete the old branch
git push --set-upstream origin new_branch   # Push the new branch, set local branch to track the new remote

আপনি আরো প্রয়োজন হলে: ধাপে ধাপে, গিট শাখা নামটি পরিবর্তন করতে কীভাবে এটি সম্পর্কে একটি ভাল নিবন্ধ।


গিট GUI ব্যবহারকারীদের জন্য এটি অনেক সহজ হতে পারে না। গিট জিওআইতে, মেনু আইটেম থেকে তৈরি করা "পুনঃনামকরণ শাখা" ডায়ালগ বক্সের ড্রপ ডাউন তালিকা থেকে শাখা নামটি নির্বাচন করুন শাখা: পুনঃনামকরণ করুন, একটি নতুন নাম টাইপ করুন এবং "পুনঃনামকরণ" ক্লিক করুন। ড্রপ ডাউন তালিকা যেখানে আমি হাইলাইট আছে।


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

  1. git branch -m oldBranch newBranch

  2. git branch -M oldBranch ExistingBranch

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

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

কিন্তু,

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

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

[email protected]:~/project/myapp/sunithamakeup$ git branch 
  master
  master0
  new_master
  test
* test1
[email protected]:~/project/myapp/sunithamakeup$ git branch -m test1 test
fatal: A branch named 'test' already exists.
[email protected]:~/project/myapp/sunithamakeup$ git branch -M test1 test
[email protected]:~/project/myapp/sunithamakeup$ git branch 
  master
  master0
  new_master
* test
[email protected]:~/project/myapp/sunithamakeup$ 

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

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

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 । যাইহোক, আমি আপনার মন নিরাপত্তার জন্য, এই অত্যন্ত নিরুৎসাহিত।


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

git branch -m <oldname> <newname>

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

git branch -m <newname>

এটি মনে রাখার একটি উপায়, -m হল "চলুন" (বা mv ), যা আপনি ফাইলগুলিকে পুনঃনামকরণ করেন।


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

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

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

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

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


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

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 [new-branch]

গিট সংস্করণ 2.9.2

আপনি যদি স্থানীয় শাখাটির নাম পরিবর্তন করতে চান তবে আপনি:

git branch -m new_name

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

git branch -m old_name new_name

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

git branch -M old_name new_name_that_already_exists

দ্রষ্টব্য: শেষ কমান্ডটি ধ্বংসাত্মক এবং আপনার শাখাকে পুনঃনামকরণ করবে, তবে আপনি সেই নামের সাথে পুরানো শাখাটি হারাবেন এবং সেগুলির কারণগুলি শাখা নামগুলি অনন্য হতে হবে।


স্থানীয়ভাবে শাখা পরিবর্তন করা বেশ সহজ ...

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

git branch -m my_new_branch

অন্যথায়, যদি আপনি কোনও master বা অন্য কোনও শাখায় থাকেন তবে আপনি যে নামটি পরিবর্তন করতে চান তার চেয়ে অন্যটি কেবলমাত্র করবেন:

git branch -m my_old_branch my_new_branch

এছাড়াও, আমি কমান্ড লাইনের মধ্যে এটিকে দেখানোর জন্য নীচের চিত্রটি তৈরি করেছি, এই ক্ষেত্রে, আপনি উদাহরণস্বরূপ master শাখাতে আছেন:


git branch -m old_branch_name  new_branch_name

অথবা

git branch --move old_branch_name new_branch_name






git-branch