Thông thường mỗi một nhiệm vụ chúng ta sẽ làm việc trên một branch khác nhau, vì vậy sau khi hoàn thành một nhiệm vụ nào đó chúng ta sẽ thực hiện thao tác merge vào branch master, bước tiếp theo là thực hiện xóa branch đó để tránh xung đột và dễ quản lý mã nguồn hơn.
1. Trạng thái fully merged là gì?
Trước khi tìm hiểu lệnh xóa branch thì bạn cần phải hiểu trạng thái fully merged là gì đã.
Khi bạn tạo một branch và thực hiện một số commit trên đó và chưa thực hiện thao tác merge vào branch master thì nó sẽ đang ở trạng thái not fully merged, còn bạn đã merge rồi thì sẽ ở trạng thái fully merged.
2. Xóa local branch
Để xóa local branch thì bạn thực hiện lệnh sau:
Bài viết này được đăng tại [kiso.vn]
$ git branch -d branch_name
Trong đó branch_name
chính là tên của branch mà bạn muốn xóa. Lưu ý là bạn không thể xóa branch mà bạn đang làm việc, ví dụ bạn đang làm việc trên branch client thì bạn không thể xóa branch client, thay vào đó ban phải checkout sang branch khác để xóa branch client.
Khi chạy lệnh trên sẽ có hai trường hợp xảy ra.
Trường hợp 1: Nếu branch đang ở trạng thái fully merged thì bạn xóa bình thường.
Trường hợp 2: Nếu branch đang ở trạng thái not fully merged thì git sẽ cảnh báo, lúc này ban phải sử dụng lệnh sau để xóa.
$ git branch -D branch_name
Trường hợp 2 này ban phải cân nhắc vì nếu xóa branch thì bạn sẽ mất đi các commit đã thực hiện trên đó.
3. Lời kết
Như vậy để xóa một branch thì ta có hai cách, cách nhất là dùng tham số -d
cho trường hợp branch đang ở trạng thái fully merged, và dùng tham số -D
cho trường hợp branch ở trạng thái not fully merged.
Trước khi delete thì bạn phải cân nhắc thật kĩ nhé, vì sau khi delete thì các commit sẽ xóa khỏi history.
Bài viết liên quan
[CSF-2] Một số thiết lập CSF, LFD
Hôm nay mình sẽ thực hiện một số thiết lập trên CSF Mở file config để sửa đổi một số tính năng dưới /etc/csf/csf.conf Nội dung chính1. Trạng thái fully merged là gì?2. Xóa local branch3....
[CSF-1] Tăng bảo mật Server với ConfigServer Firewall (CSF)
Nội dung chính1. Trạng thái fully merged là gì?2. Xóa local branch3. Lời kết1. Khái niệm CSF: CSF (ConfigServer & Firewall) là một bộ ứng dụng hoạt động trên Linux như một firewall được phát hành...
Sử dụng SSH Key với Gitlab và Github
Bài viết này mình sẽ hướng dẫn các bạn tạo ssh key cho Gitlab và Github SSH là gì? Secure Socket Shell là một giao thức mạng dùng để thiết lập kết nối mạng một...
Directory traversal vulnerabilities (phần 4)
Nội dung chính1. Trạng thái fully merged là gì?2. Xóa local branch3. Lời kếtV. Phân tích và khai thác các lỗ hổng Directory traversal (tiếp) 5. Bypass lỗ hổng khi trang web sử dụng đường dẫn...
Directory traversal vulnerabilities (phần 3)
Nội dung chính1. Trạng thái fully merged là gì?2. Xóa local branch3. Lời kếtV. Phân tích và khai thác các lỗ hổng Directory traversal 1. Lỗ hổng xảy ra khi sử dụng các hàm đọc file...
Directory traversal vulnerabilities (phần 2)
Nội dung chính1. Trạng thái fully merged là gì?2. Xóa local branch3. Lời kếtIII. Vì sao lỗ hổng Directory traversal xuất hiện? Với mỗi ngôn ngữ lập trình khác nhau, điểm xuất hiện các lỗ hổng...