Có một số cách để thực hiện điều đó:
- Thay đổi chi nhánh địa phương của bạn và sau đó đẩy các thay đổi của bạn
- Đẩy nhánh đến từ xa với tên mới trong khi vẫn giữ tên gốc cục bộ
Đổi tên địa phương và từ xa
# Rename the local branch to the new name
git branch -m <old_name> <new_name>
# Delete the old branch on remote - where <remote> is, for example, origin
git push <remote> --delete <old_name>
# Or shorter way to delete remote branch [:]
git push <remote> :<old_name>
# Push the new branch to remote
git push <remote> <new_name>
# Reset the upstream branch for the new_name local branch
git push <remote> -u <new_name>
Chỉ đổi tên chi nhánh từ xa
Tín dụng: ptim
# In this option, we will push the branch to the remote with the new name
# While keeping the local name as is
git push <remote> <remote>/<old_name>:refs/heads/<new_name> :<old_name>
Lưu ý quan trọng:
Khi bạn sử dụng git branch -m
(di chuyển), Git cũng đang cập nhật nhánh theo dõi của bạn với tên mới.
git remote rename legacy legacy
git remote rename
đang cố gắng cập nhật phần từ xa trong tệp cấu hình của bạn. Nó sẽ đổi tên điều khiển từ xa với tên đã cho thành tên mới, nhưng trong trường hợp của bạn, nó không tìm thấy bất kỳ, vì vậy việc đổi tên không thành công.
Nhưng nó sẽ không làm những gì bạn nghĩ; nó sẽ đổi tên tên cấu hình cục bộ của bạn chứ không phải nhánh từ xa.
Lưu ý
Máy chủ Git có thể cho phép bạn đổi tên các nhánh Git bằng giao diện web hoặc các chương trình bên ngoài (như Sourcetree, v.v.), nhưng bạn phải nhớ rằng trong Git, tất cả công việc đều được thực hiện cục bộ, vì vậy nên sử dụng các lệnh trên Với công việc.