it-swarm-id.com

Bagaimana cara saya mengganti nama cabang Git lokal?

Saya tidak ingin mengubah nama cabang jauh, seperti yang dijelaskan dalam Ganti nama cabang master untuk repositori Git lokal dan remote.

Bagaimana saya bisa mengganti nama cabang lokal yang belum didorong ke cabang jarak jauh?

Jika Anda perlu mengganti nama remote cabang juga:
Bagaimana cara saya mengganti nama baik nama cabang Git lokal dan jarak jauh

7584
Forrest

Jika Anda ingin mengganti nama cabang sambil menunjuk ke cabang apa pun, lakukan:

git branch -m <oldname> <newname>

Jika Anda ingin mengganti nama cabang saat ini, Anda dapat melakukan:

git branch -m <newname>

Cara untuk mengingat ini, adalah -m adalah untuk "pindah" (atau mv), yang merupakan cara Anda mengganti nama file.

12186
siride
git branch -m old_branch_name new_branch_name

Perintah di atas akan mengubah nama cabang Anda, tetapi Anda harus sangat berhati-hati menggunakan cabang yang diganti nama, karena masih akan merujuk ke cabang hulu lama yang terkait dengannya, jika ada.

Jika Anda ingin Mendorong beberapa perubahan menjadi master setelah cabang lokal Anda diubah namanya menjadi new_branch_name (nama contoh):

git Push Origin new_branch_name:master (sekarang perubahan akan pergi ke cabang master tetapi nama cabang lokal Anda adalah new_branch_name)

Untuk detail lebih lanjut, lihat " Cara mengganti nama nama cabang lokal Anda di Git ."

387
Madhan Ayyasamy

Untuk mengganti nama cabang Anda saat ini:

git branch -m <newname>
283
Jonathan

Berikut langkah-langkah untuk mengganti nama cabang:

  1. Beralih ke cabang yang perlu diganti namanya
  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): Pastikan Anda menjalankan perintah git status dan periksa bahwa cabang yang baru dibuat menunjuk ke ref sendiri dan bukan yang lebih lama. Jika Anda menemukan referensi ke cabang yang lebih tua, Anda harus membatalkan set upstream menggunakan:

git branch --unset-upstream
226
Milind Anantwar

Ganti nama cabang akan berguna setelah cabang Anda selesai. Kemudian barang baru akan datang, dan Anda ingin berkembang di cabang yang sama alih-alih menghapusnya dan membuat yang baru.

Dari pengalaman saya, untuk mengganti nama cabang lokal dan jarak jauh di Git, Anda harus melakukan langkah-langkah berikut.

Mengutip dari Beberapa Negara - Mengganti nama cabang lokal dan jarak jauh di git

1. Ganti nama cabang lokal Anda

Jika Anda berada di cabang yang ingin Anda ganti namanya:

git branch -m new-name

Jika Anda berada di cabang yang berbeda:

git branch -m old-name new-name

2. Hapus cabang jarak jauh nama lama dan Dorong cabang lokal nama baru

git Push Origin :old-name new-name

3. Setel ulang cabang upstream untuk cabang lokal nama baru

git Push Origin -u new-name
161
trungk18

Jawabannya sejauh ini benar, tetapi di sini ada beberapa informasi tambahan:

Seseorang dapat mengubah nama cabang dengan '-m' (bergerak), tetapi kita harus berhati-hati, karena '-M' memaksa mengubah nama, bahkan jika sudah ada cabang dengan nama yang sama Berikut adalah kutipan dari halaman manual 'git-branch':

> Dengan opsi -m atau -M, <oldbranch> akan diubah namanya menjadi <newbranch>. Jika <oldbranch> memiliki reflog yang sesuai, namanya diubah untuk mencocokkan <newbranch>, dan entri reflog dibuat untuk mengingat penggantian nama cabang. Jika <newbranch> ada, -M harus digunakan untuk memaksa penggantian nama agar terjadi.

93
Vanchev

1. Ganti nama

Jika itu adalah cabang Anda saat ini, lakukan saja

git branch -m new_name

Jika cabang lain yang ingin Anda ganti namanya

git branch -m old_name new_name

2. Lacak cabang jarak jauh yang baru

- Jika cabang Anda didorong, maka setelah mengganti nama Anda perlu menghapusnya dari repositori Git jarak jauh dan meminta lokal baru Anda untuk melacak cabang jarak jauh baru:

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

Aku dengan bodohnya menamai cabang yang dimulai dengan tanda hubung, dan kemudian memeriksa master. Saya tidak ingin menghapus cabang saya, saya sudah bekerja di dalamnya.

Tak satu pun dari ini bekerja:

git checkout -dumb-name

git checkout -- -dumb-name

"s, 's dan \s juga tidak membantu. git branch -m tidak berfungsi.

Inilah cara saya akhirnya memperbaikinya. Pergilah ke copy pekerjaan Anda .git/refs/head, cari nama file "-dumb-name", dapatkan hash dari cabang. Maka ini akan memeriksanya, membuat cabang baru dengan nama waras, dan menghapus yang lama.

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

Untuk mengganti nama cabang secara lokal:

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

Sekarang Anda harus menyebarkan perubahan ini di server jauh Anda juga.

Untuk Mendorong perubahan cabang lama yang dihapus:

git Push Origin :[old-branch]

Untuk Mendorong perubahan pembuatan cabang baru:

git Push Origin [new-branch]
60
aliasav

Ganti nama cabang menggunakan perintah ini:

git branch -m [old_branch_name] [new_branch_name]

-m: Ini mengubah nama/memindahkan cabang. Jika sudah ada cabang, Anda akan mendapatkan kesalahan.

Jika sudah ada cabang dan Anda ingin mengganti nama dengan cabang itu, gunakan:

 git rename -M [old_branch_name] [new_branch_name]

Untuk informasi lebih lanjut tentang bantuan, gunakan perintah ini di terminal:

git branch --help

atau

man git branch
33

Pengguna Advanced Git dapat mengubah nama secara manual menggunakan:

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

Ganti nama cabang:

git branch -m old_branchname new_branchname

Di sini nama panjang opsi -m adalah --move. Jadi kita juga bisa menggunakan:

git branch --move old_branchname new_branchname

Jika Anda ingin mengganti nama cabang saat ini, gunakan ini:

git branch -m new_branchname

atau

git branch -move new_branchname

Jika Anda ingin memindahkan perubahan ini ke jarak jauh, gunakan yang berikut ini.

git Push Origin :old_branchname new_branchname

Ini akan menghapus cabang jarak jauh old_branchname dan Dorong cabang lokal new_branchname.

git Push Origin -u new_branchname

Ini akan mengatur ulang cabang upstream untuk cabang lokal new_branchname.

30
Ajmal sha
  1. Ganti nama cabang lokal Anda.

Jika Anda berada di cabang yang ingin Anda ganti namanya:

git branch -m new-name

Jika Anda berada di cabang yang berbeda:

git branch -m old-name new-name
  1. Hapus cabang jarak jauh nama lama dan Dorong cabang lokal nama baru.

git Push Origin :old-name new-name

  1. Setel ulang cabang upstream untuk cabang lokal nama baru. Beralih ke cabang dan kemudian:

git Push Origin -u new-name

Atau untuk cara cepat melakukannya, Anda dapat menggunakan 3 langkah ini:

# Ganti nama cabang secara lokal

git branch -m old_branch new_branch  

# Hapus cabang jarak jauh yang lama

git Push Origin :old_branch  

# Dorong cabang baru, setel cabang lokal untuk melacak remote baru

git Push --set-upstream Origin new_branch   

Referensi: https://www.w3docs.com/snippets/git/how-to-rename-git-local-and-remote-branches.html

26
badarshahzad

Berikut adalah tiga langkah: Perintah yang dapat Anda panggil di dalam terminal Anda dan ubah nama cabang.

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

Jika Anda membutuhkan lebih banyak: langkah demi langkah,Cara Mengubah Nama Cabang Gitadalah artikel yang bagus tentang hal itu.

22

Mungkin seperti yang disebutkan oleh orang lain, ini akan menjadi kasus ketidakcocokan dalam penamaan cabang.

Jika Anda memiliki situasi seperti itu, saya dapat menebak bahwa Anda menggunakan Windows yang juga akan mengarahkan Anda ke:

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

Maka Anda harus melakukan langkah menengah:

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

Tidak ada lagi.

21
P4C

Mencoba menjawab secara khusus untuk pertanyaan (setidaknya judul).

Anda juga dapat mengganti nama local branch, tetapi tetap melacak nama lama pada remote.

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

Sekarang, ketika Anda menjalankan git Push, ref old_branch jarak jauh diperbarui dengan new_branch lokal Anda.

Anda harus tahu dan ingat konfigurasi ini. Tetapi ini bisa berguna jika Anda tidak memiliki pilihan untuk nama cabang jarak jauh, tetapi Anda tidak menyukainya (oh, maksud saya, Anda memiliki sangat bagus alasan untuk tidak menyukainya. !) dan lebih suka nama yang lebih jelas untuk cabang lokal Anda.

Bermain dengan konfigurasi ambil, Anda bahkan dapat mengganti nama referensi jarak jauh lokal. yaitu, memiliki pointer ref refs/remote/Origin/new_branch ke cabang, yang sebenarnya adalah old_branch pada Origin. Namun, saya sangat tidak menyarankan ini, untuk keselamatan pikiran Anda.

19

Jika Anda bersedia menggunakan SourceTree (yang saya sangat sarankan), Anda dapat mengklik kanan cabang Anda dan memilih 'Ganti Nama'.

 enter image description here

17
Marcin Szymczak

Untuk mengganti nama cabang saat ini (kecuali untuk keadaan HEAD yang dilepaskan) Anda juga dapat menggunakan alias ini:

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

Mengubah cabang secara lokal cukup mudah ...

Jika Anda berada di cabang yang ingin Anda ganti namanya, cukup lakukan ini:

git branch -m my_new_branch

Kalau tidak, jika Anda menggunakan master atau cabang lain selain yang Anda ingin ubah namanya, cukup lakukan:

git branch -m my_old_branch my_new_branch

Juga, saya membuat gambar di bawah ini untuk menunjukkan ini dalam tindakan pada baris perintah. Dalam hal ini, Anda berada di cabang master, misalnya:

 Change branch name locally

16
Alireza

Opsi lain adalah tidak menggunakan baris perintah sama sekali. Klien Git GUI seperti SourceTree menghilangkan banyak kurva pembelajaran sintaksis/rasa sakit yang menyebabkan pertanyaan seperti ini menjadi yang paling banyak dilihat di Stack Overflow.

Di SourceTree, klik kanan pada cabang lokal di panel "Cabang" di sebelah kiri dan pilih "Ganti nama ...".

15
Steve Chambers

Karena Anda tidak ingin Push cabang ke server jauh, contoh ini akan berguna:

Katakanlah Anda memiliki cabang yang ada yang disebut "fitur-panas-ku", dan Anda ingin mengubah nama menjadi "fitur-15."

Pertama, Anda ingin mengubah cabang lokal Anda. Ini tidak bisa lebih mudah:

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

Untuk informasi lebih lanjut, Anda dapat mengunjungiSecara Lokal dan Secara Remote Mengubah Nama Cabang di Git.

13
Tanah

Git versi 2.9.2

Jika Anda ingin mengubah nama cabang lokal Anda berada di:

git branch -m new_name

Jika Anda ingin mengubah nama cabang yang berbeda:

git branch -m old_name new_name

Jika Anda ingin mengubah nama cabang yang berbeda menjadi nama yang sudah ada:

git branch -M old_name new_name_that_already_exists

Catatan: Perintah terakhir merusak dan akan mengganti nama cabang Anda, tetapi Anda akan kehilangan cabang lama dengan nama itu dan itu dilakukan karena nama cabang harus unik.

10
nikkypx

Jika Anda ingin mengubah nama cabang saat ini, jalankan:

git branch -m [old_branch] [new_branch]

Jika Anda ingin menghapus cabang jarak jauh yang lama, jalankan:

git Push Origin :[old_branch]

Jika Anda ingin menghapus cabang jarak jauh yang lama dan membuat cabang jarak jauh yang baru, jalankan:

git Push Origin :old_branch new_branch
8
Arif

Cara mudah untuk melakukannya:

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

Untuk lebih lanjut, lihat ini .

8
Nomade

Hanya dua langkah untuk meniru perubahan nama di remote serta di GitHub:

Langkah 1 git branch -m old_branchname new_branchname

Langkah 2 git Push Origin :old_branchname new_branchname

7
Harry_pb
git branch -m old_branch_name  new_branch_name

atau

git branch --move old_branch_name new_branch_name
4
user128364

Untuk pengguna Git GUI itu tidak bisa lebih sederhana. Di Git GUI, pilih nama cabang dari daftar turun bawah di kotak dialog "Ubah Nama Cabang" yang dibuat dari item menu Cabang: Ubah nama, ketikkan Nama Baru, dan klik "Ganti nama". Saya telah menyoroti di mana menemukan daftar drop down.

 Rename a local Git branch

4
user3070485

Semua jawaban sebelumnya berbicara tentang git branch -m. Tentu saja, mudah dioperasikan, tetapi bagi saya, mungkin agak sulit mengingat perintah Git yang lain. Jadi saya mencoba menyelesaikan pekerjaan dengan perintah yang saya kenal. Ya, Anda bisa menebaknya.

Saya menggunakan git branch -b <new_branch_name>. Dan jika Anda tidak ingin menyimpan cabang lama sekarang, Anda dapat menjalankan git branch -D <old_branch_name> untuk menghapusnya.

Saya tahu ini mungkin sedikit membosankan, tetapi lebih mudah dipahami dan diingat. Saya harap ini membantu Anda.

3
Dai Kaixian

Ganti nama cabang Git dapat dilakukan dengan menggunakan:

  1. git branch -m oldBranch newBranch

  2. git branch -M oldBranch ExistingBranch

Perbedaan antara -m dan -M :

-m: jika Anda mencoba mengubah nama cabang Anda dengan nama cabang yang ada menggunakan -m . Ini akan memunculkan kesalahan dengan mengatakan bahwa cabang sudah ada. Anda harus memberi nama yang unik.

Tapi,

-M: ini akan membantu Anda untuk memaksa mengganti nama dengan nama yang diberikan, meskipun ada. Jadi cabang yang ada akan menimpa sepenuhnya dengan itu ...

Berikut adalah contoh terminal Git,

[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

Jika Anda menghendaki:

  • Ganti nama repositori Git, jalankan: git branch -m <oldname> <newname>
  • Hapus cabang lama dengan: git Push Origin: old-name new-name
  • Komit menggunakan: git commit <newname>
    • dan kemudian Dorong menggunakan: git Push Origin new_branch_name:master
  • Jika Anda ingin memeriksa statusnya maka gunakan: git status
  • Jika Anda ingin check-out, gunakan: git checkout
2
Vineet Jain

Dalam PhpStorm:

VCS → Git → Cabang ... → Cabang Lokal →YOUR_BRANCH→ Ganti nama

1
AlexSi

Ganti nama cabang saat ini

git branch -m <newbranchname>

atau

git branch -m oldbranchname newbranchname
0
panthari