আমি শুধু ব্যবহার করে আমার স্থানীয় শাখার নামকরণ করেছি
git branch -m oldname newname
তবে এটি কেবল শাখার স্থানীয় সংস্করণটির নাম পরিবর্তন করে। গিটহাবের আমি কীভাবে এর নাম পরিবর্তন করতে পারি?
আমি শুধু ব্যবহার করে আমার স্থানীয় শাখার নামকরণ করেছি
git branch -m oldname newname
তবে এটি কেবল শাখার স্থানীয় সংস্করণটির নাম পরিবর্তন করে। গিটহাবের আমি কীভাবে এর নাম পরিবর্তন করতে পারি?
উত্তর:
উল্লিখিত হিসাবে, গিথুব-এ পুরানোটি মুছুন এবং পুনরায় চাপ দিন, যদিও ব্যবহৃত কমান্ডগুলি প্রয়োজনের চেয়ে কিছুটা ভার্বোজ রয়েছে:
git push origin :name_of_the_old_branch_on_github
git push origin new_name_of_the_branch_that_is_local
সহজ। কমান্ডগুলি কিছুটা ছড়িয়ে দেওয়া, গিট পুশ কমান্ডটি মূলত:
git push <remote> <local_branch>:<remote_branch>
সুতরাং কোনও স্থানীয়_ব্রাঞ্চ নির্দিষ্ট করে না দিয়ে ধাক্কা দেওয়ার অর্থ "আমার স্থানীয় সংগ্রহস্থল থেকে কিছুই নেবেন না এবং এটিকে দূরবর্তী শাখা তৈরি করুন"। আমি সবসময় এটিকে সম্পূর্ণ কলুষিত বলে মনে করেছি, তবে এটি এটি হয়ে গেছে।
সম্পাদনা: এর হিসাবে গীত 1.7 সেখানে একটি দূরবর্তী শাখা মুছে ফেলার জন্য একটি বিকল্প বাক্য গঠন হল:
git push origin --delete name_of_the_remote_branch
সম্পাদনা: মন্তব্যগুলিতে @ void.pointer দ্বারা উল্লিখিত
নোট করুন যে আপনি 2 টি পুশ ক্রিয়াকলাপ একত্রিত করতে পারেন:
git push origin :old_branch new_branch
এটি উভয়ই পুরানো শাখাটি মুছে ফেলবে এবং নতুনটিকে চাপ দেবে।
এটিকে একটি সরল উপন্যাসে রূপান্তরিত করা যেতে পারে যা দূরবর্তী, মূল শাখা এবং নতুন শাখার নামটিকে যুক্তি হিসাবে গ্রহণ করে ~/.gitconfig
:
[alias]
branchm = "!git branch -m $2 $3 && git push $1 :$2 $3 -u #"
ব্যবহার:
git branchm origin old_branch new_branch
নোট করুন যে শেল কমান্ডগুলিতে অবস্থানগত যুক্তিগুলি গিটের পুরানো (২.৮ পূর্বের) সংস্করণগুলিতে সমস্যাযুক্ত ছিল, তাই গিটার সংস্করণ অনুসারে উপনামটি পৃথক হতে পারে। বিশদ জন্য এই আলোচনা দেখুন ।
git push origin :old_branch new_branch
। এটি উভয়ই পুরানো শাখাটি মুছে ফেলবে এবং নতুনটিকে ধাক্কা দেবে।
git branch -m new_branch
(পুরানো_ব্রঞ্চের নাম নতুন_ব্রঞ্চে রাখুন) ২ git commit -m 'msg'
, ৩. git push
৪. এমএমএম, ওল্ড ব্রাঞ্চ গিথুব এ দেখায়, গুগল প্রশ্ন করে এবং আপনার উত্তরটি আমি নিয়ে যাই 5.. git push origin :old_branch
(এটি মুছে ফেলা হয়েছে) 6.. git push origin new_branch
... সম্পূর্ণ বলেছে* [new branch] new_branch -> old_branch
। গিথুব ফিরে যান old_branch
এবং আবার দেখায়। যদি আমি গিথুব ওয়েব ইউআই-তে মুছে ফেলি তবে আমার কাছে "পুনরুদ্ধার" করার বিকল্প রয়েছে, সুতরাং মনে হচ্ছে নতুন_ব্র্যাঞ্চকে চাপ দেওয়া কেবল পুনরুদ্ধার করছে।
নিম্নলিখিত কমান্ডগুলি আমার পক্ষে কাজ করেছে:
git push origin :old-name-of-branch-on-github
git branch -m old-name-of-branch-on-github new-name-for-branch-you-want
git push origin new-name-for-branch-you-want
আমি 3 টি কমান্ড পেয়েছি যে কীভাবে আপনি আপনার গিট শাখার নাম পরিবর্তন করতে পারবেন এবং এই আদেশটি এটি করার দ্রুত উপায়
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
আপনার যদি ধাপে ধাপে প্রয়োজন হয় তবে আপনি এই দুর্দান্ত নিবন্ধটি পড়তে পারেন
কীভাবে গিট স্থানীয় এবং দূরবর্তী শাখাগুলির নাম পরিবর্তন করবেন
git push --set-upstream
যদি আপনি দূরবর্তী শাখাটি মোছার আগে স্থানীয়ভাবে গিথুব অ্যাপ্লিকেশন ব্যবহার করে শাখার নাম পরিবর্তন করতে চান তবে এটি সবচেয়ে গুরুত্বপূর্ণ অংশ।
কেবল পুরাতন শাখাটি সরান এবং একটি নতুন তৈরি করুন।
উদাহরণ (কেবলমাত্র দূরবর্তী শাখার নামকরণ):
git push origin :refs/heads/oldname
git push origin newname:refs/heads/newname
আপনার সম্ভবত স্থানীয় শাখার নাম পরিবর্তন করা উচিত এবং কোথায় ধাক্কা / টানতে হবে সেটির জন্য সেটিংস পরিবর্তন করা উচিত।
git push origin newname:refs/heads/newname
? মাস্টার এবং নতুন নাম একই প্রতিশ্রুতিবদ্ধ না নির্দেশ করতে পারে।
1. আপনার স্থানীয় শাখার নাম পরিবর্তন করুন।
আপনি যদি শাখায় থাকেন তবে আপনি নাম পরিবর্তন করতে চান:
git branch -m new-name
আপনি যদি অন্য একটি শাখায় থাকেন:
git branch -m old-name new-name
২. পুরানো নামের দূরবর্তী শাখাটি মুছুন এবং নতুন নাম স্থানীয় শাখাটি চাপুন।
git push origin :old-name new-name
৩. নতুন নাম স্থানীয় শাখার জন্য প্রবাহ শাখাটি পুনরায় সেট করুন।
শাখায় স্যুইচ করুন এবং তারপরে:
git push origin -u new-name
সুতরাং উপসংহার হয়
git branch -m new-name
git push origin :old-name new-name
git push origin -u new-name
git branch -m new-name && git push origin :master new-name
। এটা ব্যর্থ হবে। যদি এই উত্তরটি কেবল গিট সম্পর্কে এবং গিতুব নয় তবে এই প্রশ্নটি আরও কয়েকটি প্রশ্নের সদৃশ এবং এটি বন্ধ করা উচিত। যদি এটি সত্যই গিথুব সম্পর্কে হয় তবে উত্তরটি গিথুবকে কভার করতে হবে। এই উত্তর না।
আপনি এটি টার্মিনাল ছাড়াই করতে পারেন, আপনাকে কেবল নতুন নাম দিয়ে একটি শাখা তৈরি করতে হবে, এবং পুরানোটি সরিয়ে ফেলতে হবে। এটি করতে আপনি এই পোস্টটি ব্যবহার করতে পারেন।
এটি নিখুঁতভাবে কীভাবে করবেন তা এই নিবন্ধটি দেখায়।
১. স্থানীয় গিট শাখার নাম পরিবর্তন করতে, আমরা নামটি সংশোধন করতে গিট শাখা-এম কমান্ডটি ব্যবহার করতে পারি:
git branch -m feature1 feature2
২. আপনি যদি কেবল একটি দূরবর্তী গিট শাখার নাম বদলে দেওয়ার জন্য কমান্ডটি সন্ধান করছেন তবে এটি "এটি
git push -u origin feature2:feature3
পরীক্ষা করে দেখুন যে আপনার কোনও নেই আপনি এটি করার আগে শাখায় ট্যাগগুলি Youএটি দিয়ে আপনি এটি করতে পারেন git tag
।
অন্য উপায় হ'ল নিম্নলিখিত ফাইলগুলির নাম পরিবর্তন করা :
.git/refs/head/[branch-name]
করতে.git/refs/head/new-branch-name
.git/refs/remotes/[all-remote-names]/[branch-name]
করতে.git/refs/remotes/[all-remote-names]/new-branch-name
আপনার স্থানীয় পিসিতে এবং শিরোনামগুলির নাম পরিবর্তন করুন উদ্ভব (গুলি) চালু / দূরবর্তী সার্ভার (গুলি)
যদি আপনার বর্তমান শাখা-নামটিতে স্ল্যাশ ( /
) গিট থাকে তবে ডিরেক্টরিগুলি যেমন তৈরি করে:
বর্তমান শাখার নাম: "awe/some/branch"
.git/refs/head/awe/some/branch
.git/refs/remotes/[all-remote-names]/awe/some/branch
শাখা-নাম ইচ্ছুক: "new-branch-name"
branch
ফাইলটি অনুলিপি করুন.git/refs/*/awe/some/
.git/refs/head/
।branch
সব থেকে ফাইল অনুলিপি.git/refs/remotes/*/awe/some/
.git/refs/remotes/*/
।branch
ফাইলের নাম পরিবর্তন করুন new-branch-name
।.git/refs/head/new-branch-name
.git/refs/remotes/[all-remote-names]/new-branch-name
awe/some/branch
হয়েছে new-branch-name
(স্থানীয় এবং দূরবর্তী!)তথ্য: এই উপায়টি সর্বোত্তম নাও হতে পারে তবে এটি এখনও তাদের পক্ষে কাজ করে যাদের অন্যান্য উপায়ে সমস্যা হতে পারে
আমার ক্ষেত্রে,
আমার নাম বদলে দেওয়া শাখাটি পেতে আমার একটি অতিরিক্ত কমান্ডের প্রয়োজন
git branch --unset-upstream
origin newname
।
(টাইপিংয়ের স্বাচ্ছন্দ্যের জন্য), আমি প্রথমে git checkout oldname
।
তারপরে নিম্নলিখিতটি চালান:
git branch -m newname
git push origin :oldname
বা বাgit push origin --delete oldname
git branch --unset-upstream
git push -u origin newname
git push origin newname
এই অতিরিক্ত পদক্ষেপটি কেবলমাত্র প্রয়োজনীয় হতে পারে কারণ আমি আমার শাখাগুলিতে রিমোট ট্র্যাকিং সেটআপ করি (প্রবণতা করি) । এইভাবে যখন আমি চেক আউট করেছি, আমার পরে কেবলমাত্র পরিবর্তে কেবল টাইপ দরকার needgit push
-u
origin oldname
oldname
git push
git push origin oldname
যদি আমি কমান্ডটি আগে ব্যবহার না করি , গিটটি পুনরায় তৈরি করে এবং পুশ করে - আমার উদ্দেশ্যকে পরাস্ত করে।git branch --unset-upstream
git push origin newbranch
oldbranch
newbranch
origin oldbranch
নিম্নলিখিত কমান্ডগুলি স্থানীয়ভাবে এই শাখার নাম পরিবর্তন করে, দূরবর্তী অবস্থানের পুরানো শাখাটি মুছুন এবং নতুন শাখাটিকে পুশ করুন, স্থানীয় ব্রাঞ্চকে নতুন রিমোট ট্র্যাক করার জন্য সেট করুন:
git branch -m old_branch new_branch
git push origin :old_branch
git push --set-upstream origin new_branch
যে হিসাবে সহজ । স্থানীয়ভাবে গিট শাখার নাম পরিবর্তন করতে এবং দূর থেকে এই স্নিপেটটি ব্যবহার করুন (পরীক্ষিত এবং একটি কবজির মতো কাজ করে):
git branch -m <oldBranchName> <newBranchName>
git push origin :<oldBranchName>
git push --set-upstream origin <newBranchName>
ব্যাখ্যা:
পদক্ষেপের নাম পরিবর্তন করুন:
গিট রেফারেন্স: একটি-এম বা -M বিকল্পের সাথে নামকরণ করা হবে। যদি কোনও সম্পর্কিত রিফ্লগ থাকে তবে এটির নামটি মিলিয়ে দেওয়া হবে এবং শাখার নামকরণের কথা মনে রাখার জন্য একটি রিফ্লগ এন্ট্রি তৈরি করা হবে। যদি বিদ্যমান থাকে তবে নামটি পুনরায় নামকরণ করতে বাধ্য করতে এম ব্যবহার করতে হবে।
পদক্ষেপ মুছুন:
গিট রেফারেন্স: গিট পুশ অরিজিনাল: পরীক্ষামূলক একটি রেফ খুঁজে পান যা মূল সংগ্রহস্থলের (যেমন রেফ / মাথা / পরীক্ষামূলক) পরীক্ষামূলকভাবে মেলে এবং মুছুন।
রিমোট রেপো স্টেপ আপডেট করুন (ট্র্যাকিংয়ের জন্য প্রবাহের রেফারেন্স):
গিট রেফারেন্স: --set-upstream প্রতিটি শাখার জন্য যা আপ টু ডেট বা সাফল্যের সাথে ধাক্কা দেওয়া হয়েছে, আপ স্ট্রিম (ট্র্যাকিং) রেফারেন্স যুক্ত করুন, যুক্তি-কম গিট-পুল [1] এবং অন্যান্য কমান্ড দ্বারা ব্যবহৃত হয়। আরও তথ্যের জন্য, শাখা..গিট কনফিগারেশনে ডুবে দেখুন [1]।
গিট পুশ আদি মাথা
গিট শাখা -১ পুরানো-শাখা-নাম নতুন-শাখা-নাম
গিট পুশ আদি মাথা
গিট ব্রাঞ্চে গিট শাখা-তে পুরানো_নাম নাম_এটি আপনার স্থানীয় রেপো গিট পুশ উত্সের শাখার নামটি পরিবর্তন করবে: পুরানো_নাম নতুন_নাম পরিবর্তিত নামটিকে রিমোটে সরিয়ে দেবে এবং পুরানো শাখা গিট পুশ উত্স মুছে ফেলবে - নতুন নাম ব্যবহার করে স্থানীয় শাখাকে ট্র্যাক করতে সেট করবে দূরবর্তী শাখা। এটি সমস্যার সমাধান করে