it-swarm.asia

كيف يمكنني إعادة تسمية فرع جيت المحلية؟

لا أريد إعادة تسمية فرع بعيد ، كما هو موضح في إعادة تسمية الفرع الرئيسي لكل من مستودعات Git المحلية والبعيدة.

كيف يمكنني إعادة تسمية فرع محلي لم يتم دفعه إلى فرع بعيد؟

في حال كنت بحاجة إلى إعادة تسمية التحكم عن بعد فرع كذلك:
كيف يمكنني إعادة تسمية اسم فرع Git محليًا وبعيدًا

7584
Forrest

إذا كنت ترغب في إعادة تسمية فرع أثناء الإشارة إلى أي فرع ، فقم بما يلي:

git branch -m <oldname> <newname>

إذا كنت تريد إعادة تسمية الفرع الحالي ، فيمكنك القيام بما يلي:

git branch -m <newname>

هناك طريقة لتذكر هذا ، وهي -m هي لـ "move" (أو mv) ، وهي كيفية إعادة تسمية الملفات.

12186
siride
git branch -m old_branch_name new_branch_name

سيؤدي الأمر أعلاه إلى تغيير اسم الفرع الخاص بك ، ولكن يجب أن تكون حريصًا للغاية في استخدام الفرع الذي تمت إعادة تسميته ، لأنه سيظل يشير إلى الفرع السابق للعموم المرتبط به ، إن وجد.

إذا كنت تريد دفع بعض التغييرات إلى الرئيسي بعد إعادة تسمية الفرع المحلي الخاص بك إلى new_branch_name (اسم المثال):

git Push Origin new_branch_name:master (ستنتقل الآن التغييرات إلى الفرع الرئيسي ولكن اسم الفرع المحلي الخاص بك هو new_branch_name)

لمزيد من التفاصيل ، راجع " كيفية إعادة تسمية اسم الفرع المحلي الخاص بك في Git ."

387
Madhan Ayyasamy

لإعادة تسمية فرعك الحالي:

git branch -m <newname>
283
Jonathan

فيما يلي خطوات إعادة تسمية الفرع:

  1. التبديل إلى الفرع الذي يحتاج إلى إعادة تسمية
  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
226
Milind Anantwar

ستكون إعادة تسمية الفرع مفيدة بمجرد انتهاء فرعك. ثم تأتي أشياء جديدة ، وتريد تطويرها في نفس الفرع بدلاً من حذفها وإنشاء أخرى جديدة.

من تجربتي ، لإعادة تسمية فرع محلي وبعيد في Git ، يجب عليك القيام بالخطوات التالية.

اقتباس من عدة ولايات - إعادة تسمية فرع محلي والبعيدة في بوابة

1. إعادة تسمية الفرع المحلي الخاص بك

إذا كنت في الفرع الذي تريد إعادة تسميته:

git branch -m new-name

إذا كنت في فرع مختلف:

git branch -m old-name new-name

2. احذف فرع الاسم القديم البعيد وادفع الفرع المحلي الجديد الاسم

git Push Origin :old-name new-name

3. إعادة تعيين فرع المنبع للفرع المحلي الجديد الاسم

git Push Origin -u new-name
161
trungk18

الإجابات صحيحة حتى الآن ، ولكن فيما يلي بعض المعلومات الإضافية:

يمكن للمرء إعادة تسمية فرع بـ "-m" (نقل) ، ولكن يجب أن يكون المرء حذراً ، لأن "-M" يفرض إعادة التسمية ، حتى إذا كان هناك فرع موجود يحمل نفس الاسم بالفعل. فيما يلي مقتطفات من صفحة رجل "git-branch":

> باستخدام الخيار m أو - M ، سيتم إعادة تسمية <oldbranch> إلى <newbranch>. إذا كان <oldbranch> يحتوي على إعادة تسجيل مقابلة ، تتم إعادة تسميتها لتطابق <newbranch> ، ويتم إنشاء إدخال إعادة تسجيل لتذكر إعادة تسمية الفرع. في حالة وجود <newbranch> ، يجب استخدام -M لإجبار إعادة التسمية على الحدوث.

93
Vanchev

1. إعادة تسمية

إذا كان هو الفرع الحالي الخاص بك ، فقط تفعل

git branch -m new_name

إذا كان فرع آخر تريد إعادة تسمية

git branch -m old_name new_name

2. تتبع فرع جديد عن بعد

- إذا تم دفع فرعك ، فبعد إعادة التسمية ، ستحتاج إلى حذفه من مستودع Git البعيد ، واطلب من منطقتك الجديدة تتبع فرع بعيد جديد:

git Push Origin :old_name
git Push --set-upstream Origin new_name
77
Oss

أنا بحماقة اسمه فرع بدءا من الواصلة ، ومن ثم سحب سيد. لم أكن أرغب في حذف حذف فرعي ، كان لدي عمل فيه.

لم ينجح أي من هؤلاء:

git checkout -dumb-name

git checkout -- -dumb-name

"s و 's و \s لم يساعدهما أيضًا. git branch -m لا يعمل.

إليك كيف أصلحتها أخيرًا. اذهب إلى نسخة العمل الخاصة بك .git/refs/heads ، وابحث عن اسم الملف "-الاسم الغبي" ، واحصل على علامة التجزئة للفرع بعد ذلك ، سيقوم هذا بالتحقق منه ، وإنشاء فرع جديد باسم عاقل ، وحذف الفرع القديم.

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

لإعادة تسمية فرع محليًا:

git branch -m [old-branch] [new-branch]

الآن سيتعين عليك نشر هذه التغييرات على خادمك البعيد أيضًا.

لدفع تغييرات الفرع القديم المحذوف:

git Push Origin :[old-branch]

لدفع تغييرات إنشاء فرع جديد:

git Push Origin [new-branch]
60
aliasav

إعادة تسمية الفرع باستخدام هذا الأمر:

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
33
Hafiz Shehbaz Ali

يمكن لمستخدمي Git المتقدم إعادة تسمية يدويًا باستخدام:

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
31
Jethik

إعادة تسمية الفرع:

git branch -m old_branchname new_branchname

هنا الاسم الطويل لخيار -m هو --move. لذلك يمكننا أيضا استخدام:

git branch --move old_branchname new_branchname

إذا كنت تريد إعادة تسمية الفرع الحالي ، فاستخدم هذا:

git branch -m new_branchname

أو

git branch -move new_branchname

إذا كنت تريد نقل هذه التغييرات إلى جهاز التحكم عن بعد ، فاستخدم ما يلي.

git Push Origin :old_branchname new_branchname

سيؤدي هذا إلى حذف الفرع البعيد old_branchname ودفع الفرع المحلي new_branchname.

git Push Origin -u new_branchname

سيؤدي ذلك إلى إعادة تعيين الفرع الرئيسي للفرع المحلي new_branchname.

30
Ajmal sha
  1. إعادة تسمية الفرع المحلي الخاص بك.

إذا كنت في الفرع الذي تريد إعادة تسميته:

git branch -m new-name

إذا كنت في فرع مختلف:

git branch -m old-name new-name
  1. حذف الفرع البعيد الاسم القديم ودفع الفرع المحلي الجديد الاسم.

git Push Origin :old-name new-name

  1. إعادة تعيين الفرع upstream للفرع المحلي الجديد الاسم. قم بالتبديل إلى الفرع ثم:

git Push Origin -u new-name

أو للحصول على طريقة سريعة للقيام بذلك ، يمكنك استخدام هذه الخطوات الثلاث:

# إعادة تسمية الفرع محليًا

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

26
badarshahzad

فيما يلي ثلاث خطوات: أمر يمكنك الاتصال به داخل الجهاز وتغيير اسم الفرع.

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هي مقالة جيدة عن ذلك.

22
Hazarapet Tunanyan

ربما كما ذكر الآخرون ، ستكون هذه حالة عدم تطابق في تسمية الفروع.

إذا كان لديك مثل هذا الموقف ، فيمكنني أن أظن أنك على نظام Windows مما سيؤدي بك إلى:

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

ثم عليك القيام بخطوة وسيطة:

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

لا شيء آخر.

21
P4C

محاولة الإجابة على وجه التحديد على السؤال (على الأقل العنوان).

يمكنك أيضًا إعادة تسمية محلي فرع ، ولكن يمكنك متابعة الاسم القديم على جهاز التحكم عن بُعد.

git branch -m old_branch new_branch
git Push --set-upstream Origin new_branch:old_branch

الآن ، عندما تقوم بتشغيل git Push ، يتم تحديث old_branch المرجع عن بعد باستخدام new_branch المحلي.

عليك أن تعرف وتذكر هذا التكوين. ولكن يمكن أن يكون مفيدًا إذا لم يكن لديك خيار لاسم الفرع البعيد ، لكنك لا تحب ذلك (أعني ، لديك جيد جدًا / سبب عدم الإعجاب به) !) ويفضل اسم أكثر وضوحًا لفرعك المحلي.

اللعب باستخدام تكوين الجلب ، يمكنك حتى إعادة تسمية المرجع البعيد المحلي. بمعنى ، وجود مؤشر المرجع refs/remote/Origin/new_branch إلى الفرع ، وهذا في الواقع هو old_branch في Origin. ومع ذلك ، أنا أشجع هذا بشدة ، من أجل سلامة عقلك.

19
Pierre-Olivier Vares

إذا كنت على استعداد لاستخدام SourceTree (التي أوصي بشدة) ، يمكنك النقر بزر الماوس الأيمن فوق الفرع الخاص بك واختيار "إعادة تسمية".

 enter image description here

17
Marcin Szymczak

لإعادة تسمية الفرع الحالي (باستثناء الحالة المنفصلة HEAD) ، يمكنك أيضًا استخدام هذا الاسم المستعار:

[alias]
    mvh = !sh -c 'git branch -m `git rev-parse --abbrev-ref HEAD` $1'
16
dentuzhik

تغيير الفرع محليًا سهل جدًا ...

إذا كنت في الفرع الذي تريد تغيير الاسم له ، فما عليك سوى القيام بذلك:

git branch -m my_new_branch

بخلاف ذلك ، إذا كنت تستخدم master أو أي فرع آخر بخلاف الفرع الذي ترغب في تغيير الاسم ، فقم بما يلي:

git branch -m my_old_branch my_new_branch

أيضًا ، أقوم بإنشاء الصورة أدناه لإظهار ذلك أثناء العمل على سطر الأوامر . في هذه الحالة ، أنت على master branch ، على سبيل المثال:

 Change branch name locally

16
Alireza

خيار آخر هو عدم استخدام سطر الأوامر على الإطلاق. احصل على عملاء واجهة المستخدم الرسومية مثل SourceTree الكثير من منحنى التعلم/الألم النحوي الذي يسبب أسئلة مثل هذا واحد من بين الأكثر مشاهدة على Stack Overflow.

في SourceTree ، انقر بزر الماوس الأيمن على أي فرع محلي في جزء "الفروع" على اليسار وحدد "إعادة تسمية ...".

15
Steve Chambers

نظرًا لأنك لا ترغب في دفع الفرع إلى خادم بعيد ، فإن هذا المثال سيكون مفيدًا:

لنفترض أن لديك فرعًا حاليًا يسمى "my-hot-feature" ، وتريد إعادة تسميته إلى "feature-15".

أولاً ، تريد تغيير الفرع المحلي الخاص بك. هذا لا يمكن أن يكون أسهل:

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

لمزيد من المعلومات ، يمكنك زيارةمحليا وعن بعد إعادة تسمية فرع في بوابة.

13
Tanah

بوابة الإصدار 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

ملاحظة: الأمر الأخير مدمر وسيعيد تسمية فرعك ، لكنك ستفقد الفرع القديم بهذا الاسم وتلك الالتزامات لأنه يجب أن تكون أسماء الفروع فريدة.

10
nikkypx

إذا كنت تريد تغيير اسم الفرع الحالي ، فقم بتشغيل:

git branch -m [old_branch] [new_branch]

إذا كنت تريد حذف الفرع البعيد البعيد ، فقم بتشغيل:

git Push Origin :[old_branch]

إذا كنت تريد حذف الفرع البعيد القديم وإنشاء فرع بعيد جديد ، فقم بتشغيل:

git Push Origin :old_branch new_branch
8
Arif

طريقة بسيطة للقيام بذلك:

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

لمعرفة المزيد ، راجع هذا .

8
Nomade

فقط خطوتين لتكرار التغيير في الاسم على remote وكذلك على GitHub:

الخطوة 1 git branch -m old_branchname new_branchname

الخطوة 2 git Push Origin :old_branchname new_branchname

7
Harry_pb
git branch -m old_branch_name  new_branch_name

أو

git branch --move old_branch_name new_branch_name
4
user128364

لمستخدمي Git GUI ، لا يمكن أن يكون الأمر أكثر بساطة. في Git GUI ، اختر اسم الفرع من القائمة المنسدلة في مربع الحوار "إعادة تسمية الفرع" الذي تم إنشاؤه من عنصر القائمة الفرع: إعادة تسمية ، اكتب اسمًا جديدًا ، وانقر فوق "إعادة تسمية". لقد أبرزت مكان العثور على القائمة المنسدلة.

 Rename a local Git branch

4
user3070485

كل الإجابات السابقة تتحدث عن git branch -m. بالطبع ، من السهل أن تعمل ، لكن بالنسبة لي ، قد يكون من الصعب تذكر أمر Git آخر. لذا حاولت إنجاز العمل من خلال الأمر الذي كنت على دراية به. نعم ، قد تفكر في ذلك.

أنا استخدم git branch -b <new_branch_name>. وإذا كنت لا تريد حفظ الفرع القديم الآن ، فيمكنك تنفيذ git branch -D <old_branch_name> لإزالته.

أعلم أن الأمر قد يكون مملاً بعض الشيء ، لكن من الأسهل الفهم والتذكر. آمل أن تكون مفيدة لك.

3
Dai Kaixian

بوابة فرع إعادة تسمية يمكن القيام به عن طريق:

  1. git branch -m oldBranch newBranch

  2. git branch -M oldBranch ExistingBranch

الفرق بين -m و -M :

-m: إذا كنت تحاول إعادة تسمية فرعك باسم فرع موجود باستخدام -m . سيثير خطأ في القول أن الفرع موجود بالفعل. تحتاج إلى إعطاء اسم فريد.

لكن،

-M: هذا سيساعدك على فرض إعادة تسمية باسم محدد ، حتى إذا كان موجودًا. لذلك سوف فرع القائمة الكتابة بالكامل معها ...

هنا هو مثال على محطة بوابة ،

[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$
3
Silent Spectator

أذا أردت:

  • إعادة تسمية مستودع Git ، تشغيل: git branch -m <oldname> <newname>
  • احذف الفرع القديم بواسطة: git Push Origin: old-name new-name
  • ارتكبها باستخدام: git commit <newname>
    • ثم اضغط باستخدام: git Push Origin new_branch_name:master
  • إذا كنت تريد التحقق من الحالة ، فاستخدم: git status
  • إذا كنت تريد التحقق ، فاستخدم: git checkout
2
Vineet Jain

في PhpStorm:

VCS → Git → الفروع ... → الفروع المحلية →YOUR_BRANCH→ إعادة تسمية

1
AlexSi

إعادة تسمية الفرع الحالي

git branch -m <newbranchname>

أو

git branch -m oldbranchname newbranchname
0
panthari