Việc xoá một nhánh git cực kỳ đơn giản, bạn chỉ cần sử dụng hai câu lệnh đơn giản như sau:
Nếu bạn muốn xóa một nhánh nào đó, đầu tiên cần checkout sang một nhánh khác nhánh mà bạn cần xóa.
1. Xoá nhánh ở local (local branch):
git branch -d <tên nhánh local>
git branch -D <tên nhánh local>
2. Xoá nhánh git ở server (remote branch):
git push origin --delete <tên nhánh remote>
Tại sao cần xoá nhánh trong GIT?
Một trong những tính năng tuyệt vời của GIT là cho phép chúng ta có thể tạo nhiều nhánh (branch) trên một repo. Nó thật hữu dụng và tiện lợi để phát triển song song nhiều tính năng trong một dự án, khi mà nó cô lập source code của các tính năng mới ra khỏi source code chính (main codebase) để dễ dàng quản lý và không ảnh hướng đến sự an toàn trong vận hành dự án.
Một dự án thường được tạo một git repo, mỗi một repo sẽ có một nhánh chính (main branch). Các lập trình viên sẽ tạo ra các nhánh khác nhau cho từng tính năng (feature branch), sau khi tính năng được kiểm thử ok thì tiến hành merge code của tính năng đó vào nhánh chính (nhánh chính thường đặt là master). Như vậy xuyên xuốt quá trình của dự án thì sẽ có rất nhiều feature branch được tạo ra, việc lưu trữ các branch đó là không cần thiết và có thể gây rối trong quá trình quản lý git.
Vậy nên, sau khi tính năng được hoàn thành, và đã merge code từ feature branch vào main branch, thì chúng ta nên xoá nhánh đó đi.
Làm thế nào để xoá nhánh ở LOCAL?
GIT không cho phép bạn xoá nhánh hiện tại bạn đang truy cập, vậy nên bạn cần checkout qua một nhánh khác với nhánh bạn muốn xoá. Ví dụ bạn muốn xoá một nhánh có tên feature/add_function_login
và hiện tại bạn đang đứng ở nhánh này, thì bạn cần gõ lệnh như sau:
# Cần checkout qua nhánh chính master
git checkout master
# Dùng lệnh xoá local branch.
git branch -d feature/add_function_login
Sẽ có một số trường hợp GIT sẽ không cho phép bạn xoá nhánh một cách thông thường, bởi vì nhánh bạn muốn xoá có một số thay đổi chưa được hợp nhất (unmerge changes). Nhưng nếu bạn nhất quyết muốn xoá nó thì có thể dùng option -D
thay cho -d
để ép buộc git phải xoá nó theo mong muốn của bạn như sau:
git branch -D feature/add_function_login
Làm thế nào để xoá nhánh REMOTE?
Nhánh remote tức là những nhánh đã được pushed lên server, khi bạn dùng thao tác xoá nhánh ở local thì nhánh đó chỉ mất đi trên local của bạn, nhưng trên server vẫn tồn tại nó. Ví dụ bạn muốn xoá hẳn nhánh feature/add_function_login
trên git server, bạn cần dùng lệnh sau:
git push origin --delete feature/add_function_login
Hoặc có thể dùng câu lệnh ngắn gọn hơn:
git push origin :fix/authentication
Bài viết này giải quyết thắc mắc cho những câu hỏi sau:
1. Làm thế nào để xóa nhánh trong git?
2. Làm thế nào để xóa git branch?
3. Làm thế nào để xóa nhánh git?
4. Làm thế nào để xóa branch trong git?
5. Làm thế nào để xoá nhánh local?
6. Làm thế nào để xoá nhánh remote?
7. How to delete git branch?
8. How to delete git branch local and remote?