Git: Cách xóa một nhánh Git (deleting Git branch) cả cục bộ và từ xa


Khóa học qua video:
Python C# Lập trình C Java SQL Server PHP HTML5-CSS3-JavaScript
Đăng ký Hội viên
Tất cả các video dành cho hội viên

Deleting Get Branch

Trong hầu hết các trường hợp, việc xóa một nhánh Git rất đơn giản. Bạn sẽ tìm hiểu cách xóa nhánh Git cục bộ và từ xa trong bài viết này.

Phiên bản TL;DR

// xóa nhánh Git cục bộ
git branch -d localBranchName

// xóa nhánh git từ xa
git push origin --delete remoteBranchName

Khi nào nên xóa nhánh Git

Thông thường một repo Git có các nhánh khác nhau. Chúng là một cách tuyệt vời để làm việc trên các tính năng và bản sửa lỗi khác nhau trong khi tách mã mới khỏi cơ sở mã chính.

Các repo thường có một nhánh main dành cho cơ sở mã chính và các nhà phát triển tạo các nhánh khác để hoạt động trên các tính năng khác nhau.

Sau khi hoàn thành công việc trên một tính năng, thì ta thường nên xóa nhánh đó.

Xóa một nhánh CỤC BỘ (LOCAL)

Git sẽ không cho phép bạn xóa nhánh mà bạn hiện đang truy cập, vì vậy bạn phải đảm bảo kiểm tra nhánh mà bạn KHÔNG xóa. Ví dụ: git checkout main

Xóa một nhánh bằng cách sử dụng lệnh: git branch -d <branch>.

Ví dụ: git branch -d fix/authentication

Tùy chọn -d sẽ chỉ xóa nhánh nếu nó đã được đẩy và hợp nhất với nhánh từ xa. Thay vào đó ta sử dụng -D nếu ta muốn buộc phải xóa nhánh đó, ngay cả khi nhánh đó chưa được đẩy hoặc hợp nhất.

Như vậy với cách thức như đã nói ở trên thì ta sẽ xóa được nhánh cục bộ.

Xoá một chi nhánh TỪ XA (REMOTE)

Để xóa một nhánh từ xa thì ta làm như sau: git push <remote> --delete <branch>.

Ví dụ: git push origin --delete fix/authentication

Bạn cũng có thể sử dụng lệnh ngắn hơn sau đây để xóa một nhánh từ xa: git push <remote> :<branch>

Ví dụ: git push origin :fix/authentication

Nếu bạn gặp lỗi như bên dưới đây thì có thể là ai đó đã xóa nhánh này rồi.

error: unable to push to unqualified destination: remoteBranchName The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to 'git@repository_name'

Cố gắng đồng bộ hóa danh sách nhánh của bạn bằng cách sử dụng:

git fetch -p

Cờ -p có nghĩa là "prune - cắt tỉa". Sau khi tìm nạp, các nhánh không còn tồn tại trên remote sẽ bị xóa.

« Trước: Git Bash
Khóa học qua video:
Python C# Lập trình C Java SQL Server PHP HTML5-CSS3-JavaScript
Đăng ký Hội viên
Tất cả các video dành cho hội viên
Copied !!!