it-swarm-vi.tech

Làm cách nào để xóa chi nhánh Git cục bộ và từ xa?

Tôi muốn xóa một chi nhánh cả cục bộ và từ xa.

Thất bại trong việc xóa chi nhánh từ xa:

$ git branch -d remotes/Origin/bugfix
error: branch 'remotes/Origin/bugfix' not found.

$ git branch -d Origin/bugfix
error: branch 'Origin/bugfix' not found.

$ git branch -rd Origin/bugfix
Deleted remote branch Origin/bugfix (was 2a14ef7).

$ git Push
Everything up-to-date

$ git pull
From github.com:gituser/gitproject
* [new branch] bugfix -> Origin/bugfix
Already up-to-date.

Tôi nên làm gì khác nhau để xóa thành công nhánh remotes/Origin/bugfix cả cục bộ và từ xa?

15136
Matthew Rankin

Tóm tắt

$ git Push --delete <remote_name> <branch_name>
$ git branch -d <branch_name>

Lưu ý rằng trong hầu hết các trường hợp, tên từ xa là Origin.

Xóa chi nhánh địa phương

Để xóa nhánh cục bộ, hãy sử dụng một trong các cách sau:

$ git branch -d branch_name
$ git branch -D branch_name

Lưu ý: Tùy chọn -d là bí danh cho --delete, chỉ xóa chi nhánh nếu nó đã được hợp nhất hoàn toàn trong nhánh ngược dòng của nó. Bạn cũng có thể sử dụng -D, là bí danh cho --delete --force, xóa chi nhánh "bất kể trạng thái hợp nhất của nó." [Nguồn: man git-branch]

Xóa Chi nhánh từ xa [Cập nhật vào ngày 8 tháng 9 năm 2017]

Kể từ Git v1.7.0 , bạn có thể xóa atừ xachi nhánh bằng cách sử dụng

$ git Push <remote_name> --delete <branch_name>

có thể dễ nhớ hơn

$ git Push <remote_name> :<branch_name>

đã được thêm vào Git v1.5.0 "để xóa một nhánh từ xa hoặc thẻ."

Bắt đầu từ Git v2.8.0 bạn cũng có thể sử dụng git Push với tùy chọn -d làm bí danh cho --delete.

Do đó, phiên bản Git bạn đã cài đặt sẽ ra lệnh cho dù bạn cần sử dụng cú pháp dễ hơn hay khó hơn.

Xóa Chi nhánh từ xa [Câu trả lời gốc từ ngày 5 tháng 1 năm 2010]

Từ Chương 3 của Pro Git của Scott Chacon:

Xóa các chi nhánh từ xa

Giả sử bạn đã thực hiện với một chi nhánh từ xa - giả sử, bạn và các cộng tác viên của bạn đã hoàn thành một tính năng và đã hợp nhất nó vào chi nhánh chủ từ xa của bạn (hoặc bất kỳ chi nhánh nào mà dòng mã ổn định của bạn nằm trong). Bạn có thể xóa một nhánh từ xa bằng cú pháp khá khó hiểu git Push [remotename] :[branch]. Nếu bạn muốn xóa chi nhánh sửa máy chủ của mình khỏi máy chủ, bạn chạy như sau:

$ git Push Origin :serverfix
To [email protected]:schacon/simplegit.git
 - [deleted]         serverfix

Bùng nổ. Không có thêm chi nhánh trên máy chủ của bạn. Bạn có thể muốn xem lại trang này vì bạn sẽ cần lệnh đó và bạn có thể quên cú pháp. Một cách để nhớ lệnh này là bằng cách nhớ lại cú pháp git Push [remotename] [localbranch]:[remotebranch] mà chúng ta đã đi qua một chút trước đó. Nếu bạn rời khỏi phần [localbranch], thì về cơ bản, bạn sẽ nói rằng, Hãy lấy bất cứ thứ gì về phía tôi và biến nó thành [remotebranch].

Tôi đã phát hành git Push Origin :bugfix và nó hoạt động rất tuyệt. Scott Chacon đã đúng, tôi sẽ muốn tai chó trang đó (hoặc hầu như tai chó bằng cách trả lời điều này trên Stack Overflow).

Sau đó, bạn nên thực hiện điều này trên các máy khác

git fetch --all --Prune

để tuyên truyền thay đổi.

18919
Matthew Rankin

Câu trả lời của Matthew là tuyệt vời để loại bỏ các nhánh từ xa và tôi cũng đánh giá cao lời giải thích, nhưng để phân biệt đơn giản giữa hai lệnh:

Để xóa anhánh cục bộkhỏi máy của bạn:

git branch -d {the_local_branch} (thay vào đó sử dụng -D để buộc xóa chi nhánh mà không kiểm tra trạng thái hợp nhất)

Để xóa anhánh từ xakhỏi máy chủ:

git Push Origin --delete {the_remote_branch}

Tham khảo: https://makandracards.com/makandra/621-git-delete-a-branch-local-or-remote

3016
Eric Brotto

Câu trả lời ngắn

Nếu bạn muốn giải thích chi tiết hơn về các lệnh sau, hãy xem câu trả lời dài trong phần tiếp theo.

Xóa một nhánh từ xa:

git Push Origin --delete <branch>  # Git version 1.7.0 or newer
git Push Origin :<branch>          # Git versions older than 1.7.0

Xóa một chi nhánh địa phương:

git branch --delete <branch>
git branch -d <branch> # Shorter version
git branch -D <branch> # Force delete un-merged branches

Xóa một nhánh theo dõi từ xa cục bộ:

git branch --delete --remotes <remote>/<branch>
git branch -dr <remote>/<branch> # Shorter

git fetch <remote> --Prune # Delete multiple obsolete tracking branches
git fetch <remote> -p      # Shorter

Câu trả lời dài: có 3 nhánh khác nhau để xóa!

Khi bạn đang xử lý xóa các nhánh cả cục bộ và từ xa, hãy nhớ rằng có 3 nhánh khác nhau có liên quan:

  1. Chi nhánh địa phương X.
  2. Chi nhánh Origin từ xa X.
  3. Nhánh theo dõi từ xa cục bộ Origin/X theo dõi nhánh từ xa X.

Visualization of 3 branches

Áp phích ban đầu được sử dụng

git branch -rd Origin/bugfix

chỉ xóa nhánh theo dõi từ xa cục bộ của mìnhOrigin/bugfix, và không phải là nhánh từ xa thực tế bugfix trên Origin.

Diagram 2

Để xóa chi nhánh từ xa thực sự đó, bạn cần

git Push Origin --delete bugfix

Diagram 3

Chi tiết bổ sung

Các phần sau đây mô tả các chi tiết bổ sung cần xem xét khi xóa các nhánh theo dõi từ xa và theo dõi từ xa của bạn.

Nhấn để xóa các nhánh từ xa cũng xóa các nhánh theo dõi từ xa

Lưu ý rằng việc xóa nhánh từ xa X khỏi dòng lệnh bằng cách sử dụng git Pushcũng sẽ xóa nhánh theo dõi từ xa cục bộOrigin/X, do đó không cần thiết phải cắt nhánh theo dõi từ xa đã lỗi thời bằng git fetch --Prune hoặc git fetch -p Sẽ không đau nếu bạn vẫn làm điều đó.

Bạn có thể xác minh rằng nhánh theo dõi từ xa Origin/X cũng đã bị xóa bằng cách chạy như sau:

# View just remote-tracking branches
git branch --remotes
git branch -r

# View both strictly local as well as remote-tracking branches
git branch --all
git branch -a

Cắt tỉa nhánh theo dõi từ xa cục bộ Origin/X

Nếu bạn không xóa chi nhánh từ xa X khỏi dòng lệnh (như trên), thì repo cục bộ của bạn sẽ vẫn chứa (một nhánh theo dõi từ xa đã lỗi thời) Origin/X. Điều này có thể xảy ra nếu bạn xóa một chi nhánh từ xa trực tiếp qua giao diện web của GitHub.

Một cách điển hình để loại bỏ các nhánh theo dõi từ xa lỗi thời này (kể từ phiên bản Git 1.6.6) là chỉ cần chạy git fetch với --Prune hoặc ngắn hơn -p. Lưu ý rằng việc này sẽ xóa tất cả các nhánh theo dõi từ xa cục bộ đã lỗi thời đối với mọi nhánh từ xa không còn tồn tại trên điều khiển từ xa:

git fetch Origin --Prune
git fetch Origin -p # Shorter

Dưới đây là trích dẫn có liên quan từ 1.6.6 ghi chú phát hành (nhấn mạnh của tôi):

"git fetch" đã học--all--multipleoptions, để chạy tìm nạp từ nhiều kho lưu trữ và tùy chọn --Prune để xóa các nhánh theo dõi từ xa đã cũ. Điều này làm cho "git remote update" và "git remote Prune" ít cần thiết hơn (mặc dù không có kế hoạch loại bỏ "cập nhật từ xa" cũng như "Prune từ xa").

Thay thế cho việc cắt tỉa tự động ở trên cho các nhánh theo dõi từ xa lỗi thời

Ngoài ra, thay vì cắt tỉa các nhánh theo dõi từ xa cục bộ đã lỗi thời của bạn thông qua git fetch -p, bạn có thể tránh thực hiện thêm thao tác mạng bằng cách xóa thủ công các nhánh bằng các cờ --remote hoặc -r

git branch --delete --remotes Origin/X
git branch -dr Origin/X # Shorter

Xem thêm

1743
user456814

Các bước để xóa một chi nhánh:

Để xóa nhánh từ xa:

git Push Origin --delete <your_branch> 

Để xóa nhánh cục bộ , bạn có ba cách :

1: git branch -D <branch_name> 

2: git branch --delete --force <branch_name>  //same as -D

3: git branch --delete  <branch_name>         //error on unmerge

Giải thích: OK, chỉ cần giải thích những gì đang diễn ra ở đây!

Chỉ cần thực hiện git Push Origin --delete thành xóa CHỈ từ xa của bạn CHỈ , thêm tên của chi nhánh ở cuối và điều này sẽ xóa và Đẩy nó vào điều khiển từ xa cùng một lúc ...

Ngoài ra, git branch -D, chỉ cần xóa nhánh cục bộONLY! ...

-D là viết tắt của --delete --force sẽ xóa chi nhánh ngay cả khi nó không được hợp nhất (lực lượng xóa), nhưng bạn cũng có thể sử dụng -d là viết tắt của --delete, nó gây ra lỗi tương ứng với trạng thái hợp nhất chi nhánh ...

Tôi cũng tạo hình ảnh dưới đây để hiển thị các bước:

 delete a remote and local branch in git

1234
Alireza

Bạn cũng có thể sử dụng cách sau để xóa nhánh từ xa

git Push --delete Origin serverfix

Mà làm điều tương tự như

git Push Origin :serverfix

nhưng nó có thể dễ nhớ hơn.

746
pagetribe

Nếu bạn muốn xóa một nhánh, trước tiên hãy kiểm tra đến nhánh khác ngoài nhánh cần xóa.

git checkout other_than_branch_to_be_deleted

Xóa chi nhánh địa phương:

git branch -D branch_to_be_deleted

Xóa chi nhánh từ xa:

git Push Origin --delete branch_to_be_deleted
357
Praveen Hiremath

Mẹo: Khi bạn xóa chi nhánh bằng

git branch -d <branchname> # deletes local branch

hoặc là

git Push Origin :<branchname> # deletes remote branch

chỉ các tài liệu tham khảo bị xóa. Mặc dù chi nhánh thực sự bị xóa trên điều khiển từ xa, các tham chiếu đến nó vẫn tồn tại trong kho lưu trữ cục bộ của các thành viên trong nhóm của bạn. Điều này có nghĩa là đối với các thành viên khác trong nhóm, các nhánh bị xóa vẫn hiển thị khi họ thực hiện git branch -a.

Để giải quyết điều này, các thành viên trong nhóm của bạn có thể Cắt tỉa các nhánh bị xóa bằng

git remote Prune <repository>

Đây thường là git remote Prune Origin.

352
pfrenssen
git branch -D <name-of-branch>
git branch -D -r Origin/<name-of-branch>
git Push Origin :<name-of-branch>
256
Felipe

Điều này rất đơn giản: Chỉ cần chạy lệnh sau:

Để xóa một nhánh Git cả cục bộ và từ xa, trước tiên hãy xóa nhánh cục bộ bằng lệnh:

git branch -d example

(ở đây example là tên chi nhánh)

Và sau đó xóa chi nhánh từ xa bằng lệnh:

git Push Origin :example
220
Syeful Islam

Một cách tiếp cận khác là: -

git Push --Prune Origin

CẢNH BÁO: Điều này sẽ xóa tất cả các nhánh từ xa không tồn tại cục bộ. Hoặc toàn diện hơn,

git Push --mirror

sẽ làm cho kho lưu trữ từ xa trông giống như bản sao cục bộ của kho lưu trữ (đầu cục bộ, điều khiển từ xa và thẻ được nhân đôi trên điều khiển từ xa).

191
imanuelcostigan

Tôi sử dụng các mục sau trong Bash settings:

alias git-shoot="git Push Origin --delete"

Sau đó, bạn có thể gọi:

git-shoot branchname
160
crizCraig

Kể từ tháng 1 năm 2013, GitHub bao gồm một Delete branch nút bên cạnh mỗi chi nhánh trong trang "Chi nhánh" của bạn.

Bài đăng trên blog có liên quan: Tạo và xóa chi nhánh

128
Nacho Coloma

Nếu bạn muốn hoàn thành cả hai bước này bằng một lệnh duy nhất, bạn có thể tạo bí danh cho nó bằng cách thêm phần dưới đây vào ~/.gitconfig:

[alias]
    rmbranch = "!f(){ git branch -d ${1} && git Push Origin --delete ${1}; };f"

Ngoài ra, bạn có thể thêm phần này vào cấu hình toàn cầu của mình từ dòng lệnh bằng cách sử dụng

git config --global alias.rmbranch \
'!f(){ git branch -d ${1} && git Push Origin --delete ${1}; };f'

LƯU &YACUTE;: Nếu sử dụng -d (chữ thường d), nhánh sẽ chỉ bị xóa nếu nó đã được hợp nhất. Để buộc xóa xảy ra, bạn sẽ cần sử dụng -D (chữ hoa D).

119
Ryan Kohn

Xóa cục bộ:

Để xóa một chi nhánh địa phương, bạn có thể sử dụng:

git branch -d <branch_name> 

Để xóa một nhánh cưỡng bức, sử dụng -D thay vì -d.

git branch -D <branch_name>

Xóa từ xa:

Có hai lựa chọn:

git Push Origin :branchname  

git Push Origin --delete branchname 

Tôi sẽ đề nghị bạn sử dụng cách thứ 2 vì nó trực quan hơn.

118
Rahul Gupta

Để xóa chi nhánh của bạn cục bộ và từ xa

  • Thanh toán cho chi nhánh chính - git checkout master

  • Xóa chi nhánh từ xa của bạn - git Push Origin --delete <branch-name>

  • Xóa chi nhánh địa phương của bạn - git branch --delete <branch-name>

111
mfathy00

Bạn cũng có thể làm điều này bằng cách sử dụng git remote Prune Origin

$ git remote Prune Origin
Pruning Origin
URL: [email protected]/yourrepo.git
 * [pruned] Origin/some-branchs

Nó cắt xén và xóa các nhánh theo dõi từ xa khỏi danh sách git branch -r.

106
nickleefly

Ngoài các câu trả lời khác, tôi thường sử dụng công cụ git_remote_branch . Đó là một cài đặt bổ sung, nhưng nó giúp bạn có một cách thuận tiện để tương tác với các chi nhánh từ xa. Trong trường hợp này, để xóa:

grb delete branch

Tôi thấy rằng tôi cũng sử dụng các lệnh publishtrack khá thường xuyên

102
u2622

Một lớp lót lệnh xóa cả cục bộ và từ xa :

D=branch-name; git branch -D $D; git Push Origin :$D

hoặc thêm bí danh dưới đây vào ~/.gitconfig ; cách sử dụng: git kill branch-name

[alias]
    kill = "!f(){ git branch -D \"$1\";  git Push Origin --delete \"$1\"; };f"
92
Vinnie James

Xóa chi nhánh

Giả sử công việc của chúng tôi trên nhánh "mẫu liên hệ" đã được thực hiện và chúng tôi đã tích hợp nó vào "chính chủ". Vì chúng tôi không cần nó nữa, chúng tôi có thể xóa nó (cục bộ):

$ git branch -d contact-form

Và để xóa chi nhánh từ xa:

git Push Origin --delete contact-form
90
Ulysses Alves

Xóa chi nhánh từ xa

git Push Origin :<branchname>

Xóa chi nhánh địa phương

git branch -D <branchname>

Xóa các bước chi nhánh địa phương:

  1. kiểm tra chi nhánh khác
  2. xóa chi nhánh địa phương
86
jayxhj

Nói một cách đơn giản:

git branch -d <branch-name>
git Push Origin :<branch-name>
85
piyushmandovra

Bây giờ bạn có thể làm điều đó với GitHub Desktop app.

Sau khi ra mắt ứng dụng

  1. Bấm vào dự án chứa chi nhánh
  2. Chuyển sang nhánh bạn muốn xóa  switching branch
  3. Từ menu "Chi nhánh", chọn "Hủy xuất bản ...", để xóa chi nhánh khỏi máy chủ GitHub.  unpublish branch
  4. Từ menu "Chi nhánh", chọn, 'Xóa " Branch_name " ...', để xóa chi nhánh khỏi máy cục bộ của bạn (còn gọi là máy bạn đang làm việc)  delete local branch
79
Eric
git Push Origin --delete <branch Name>

dễ nhớ hơn

git Push Origin :branchName
78
Smila

Để xóa cục bộ - (Bình thường),

git branch -d my_branch

Nếu chi nhánh của bạn trong quá trình sắp xếp lại/sáp nhập và điều đó không được thực hiện đúng nghĩa là bạn sẽ gặp lỗi Rebase/Merge in progress, vì vậy trong trường hợp đó, bạn sẽ không thể xóa chi nhánh của mình.

Vì vậy, bạn cần phải giải quyết việc đánh lại/sáp nhập nếu không bạn có thể buộc Xóa bằng cách sử dụng,

git branch -D my_branch

Để xóa trong Remote:

git Push --delete Origin my_branch

có thể làm tương tự bằng cách sử dụng,

git Push Origin :my_branch   # easy to remember both will do the same.

Biểu diễn đồ họa,

 enter image description here

73
Silent Spectator

Điều này sẽ không hoạt động nếu bạn có một thẻ có cùng tên với nhánh trên điều khiển từ xa:

$ git Push Origin :branch-or-tag-name
error: dst refspec branch-or-tag-name matches more than one.
error: failed to Push some refs to '[email protected]:SomeName/some-repo.git'

Trong trường hợp đó, bạn cần xác định rằng bạn muốn xóa chi nhánh, không phải thẻ:

git Push Origin :refs/heads/branch-or-tag-name

Tương tự, để xóa thẻ thay vì chi nhánh bạn sẽ sử dụng:

git Push Origin :refs/tags/branch-or-tag-name
64
Amiramix

Nhiều câu trả lời khác sẽ dẫn đến lỗi/cảnh báo. Cách tiếp cận này tương đối ngu ngốc mặc dù bạn vẫn có thể cần git branch -D branch_to_delete nếu nó không được hợp nhất hoàn toàn vào some_other_branch chẳng hạn.

git checkout some_other_branch
git Push Origin :branch_to_delete
git branch -d branch_to_delete

Cắt tỉa từ xa không cần thiết nếu bạn xóa chi nhánh từ xa. Nó chỉ được sử dụng để có được các điều khiển từ xa cập nhật nhất có sẵn trên kho lưu trữ mà bạn đang theo dõi. Tôi đã quan sát git fetch sẽ thêm điều khiển từ xa, không xóa chúng. Đây là một ví dụ về thời điểm git remote Prune Origin thực sự sẽ làm gì đó:

Người dùng A thực hiện các bước trên. Người dùng B sẽ chạy các lệnh sau để xem các nhánh từ xa cập nhật nhất

git fetch
git remote Prune Origin
git branch -r
50
Brandon Cook

Tôi phát ốm vì câu trả lời này, vì vậy tôi đã thực hiện một cách tiếp cận tương tự với câu trả lời mà crizCraig đã đăng trước đó.

Đã thêm phần sau vào hồ sơ Bash của tôi:

function gitdelete(){
    git Push Origin --delete $1
    git branch -D $1
}

Sau đó, mỗi khi tôi hoàn thành với một nhánh (chẳng hạn như sáp nhập vào master), tôi sẽ chạy như sau trong thiết bị đầu cuối của mình:

gitdelete my-branch-name

... sau đó xóa my-branch-name khỏi Origin cũng như cục bộ.

49
arthurakay

Trước khi thực hiện

git branch --delete <branch>

trước tiên hãy đảm bảo bạn xác định tên CHÍNH XÁC của nhánh từ xa bằng cách thực hiện:

git ls-remote

Điều này sẽ cho bạn biết những gì cần nhập CHÍNH XÁC cho giá trị <branch>. (branch là trường hợp nhạy cảm!)

45
joey
git Push Origin :bugfix  # Deletes remote branch
git branch -d bugfix     # Must delete local branch manually

Nếu bạn chắc chắn muốn xóa nó, hãy chạy

git branch -D bugfix

Bây giờ để dọn dẹp các chi nhánh từ xa bị xóa chạy

git remote Prune Origin
44
Vivek

Mashup của tất cả các câu trả lời khác. Yêu cầu Ruby 1.9.3+, đã kiểm tra chỉ trên OS X.

Gọi tệp này git-remove, làm cho nó thực thi được và đặt nó vào đường dẫn của bạn. Sau đó sử dụng, ví dụ, git remove temp.

#!/usr/bin/env Ruby
require 'io/console'

if __FILE__ == $0
      branch_name = ARGV[0] if (ARGV[0])
      print "Press Y to force delete local and remote branch #{branch_name}..."
    response = STDIN.getch
    if ['Y', 'y', 'yes'].include?(response)
      puts "\nContinuing."
      `git branch -D #{branch_name}`
      `git branch -D -r Origin/#{branch_name}`
      `git Push Origin --delete #{branch_name}` 
    else
      puts "\nQuitting."
    end
end
43
Dan Rosenstark

Tôi đã thêm các bí danh sau vào tệp .gitconfig của mình. Điều này cho phép tôi xóa các nhánh có hoặc không chỉ định tên nhánh. Tên nhánh được mặc định cho nhánh hiện tại nếu không có đối số nào được truyền vào.

[alias]
    branch-name = rev-parse --abbrev-ref HEAD     

    rm-remote-branch = !"f() { branch=${1-$(git branch-name)}; git Push Origin :$branch; }; f"
    rm-local-branch = !"f() { branch=${1-$(git branch-name)}; git checkout master; git branch -d $branch; }; f"
    rm-branch-fully = !"f() { branch=${1-$(git branch-name)}; git rm-local-branch $branch; git rm-remote-branch $branch; }; f"
39
Jared Knipp

Một tùy chọn thay thế cho dòng lệnh để xóa các nhánh từ xa là trang nhánh GitHub.

Xem ví dụ: https://github.com/angular/angular.js/branches

Tìm thấy trong trang Code -> Branches của kho lưu trữ GitHub.

Tôi thường thích dòng lệnh của mình hơn nhưng trang GitHub này hiển thị cho bạn nhiều thông tin hơn về các nhánh, chẳng hạn như ngày cập nhật cuối cùng và người dùngsố lần xác nhận trước và sau. Nó rất hữu ích khi giao dịch với một số lượng lớn các chi nhánh.

31
Bradley Flood

Tôi cũng có vấn đề tương tự, và điều này dường như hoạt động: Điều này xóa chi nhánh địa phương. git branch -d the_local_branch

Điều này loại bỏ chi nhánh từ xa git Push Origin :the_remote_branch

Nguồn: Thẻ Makandra

30
Srijan Karki

Có câu trả lời tốt, nhưng, trong trường hợp bạn có rất nhiều nhánh, xóa từng cái một và cục bộ, sẽ là một công việc tẻ nhạt. Bạn có thể sử dụng tập lệnh này để tự động hóa các tác vụ này.

branch_not_delete=( "master" "develop" "our-branch-1" "our-branch-2")


for branch in `git branch -a | grep remotes | grep -v HEAD | grep -v master`; do

    # delete prefix remotes/Origin/ from branch name
    branch_name="$(awk '{gsub("remotes/Origin/", "");print}' <<< $branch)"

    if ! [[ " ${branch_not_delete[*]} " == *" $branch_name "* ]]; then
        # delete branch remotly and locally
        git Push Origin :$branch_name
    fi
done 
  • Liệt kê các nhánh mà bạn không muốn xóa
  • Lặp lại từ xa chi nhánh và nếu chúng không có trong "danh sách bảo tồn" của chúng tôi, chúng tôi đã xóa.

Nguồn: remove-git-cành-cùng một lúc

28
levi

Sử dụng GitBash bạn có thể thực hiện các thao tác sau:

git branch --delete <branch>

OR

Từ ứng dụng máy tính để bàn GitHub, khi bạn đã kiểm tra chi nhánh, bạn có thể xóa Local Branch thông qua dải menu Branch:

 enter image description here

Nếu bạn KHÔNG sử dụng ứng dụng máy tính để bàn GitHub và đang sử dụng IDE như Visual Studio để kiểm soát nguồn cục bộ của bạn, tất cả những gì bạn phải làm là một vài bước nhanh chóng:

  1. Kiểm tra một chi nhánh khác ngoài chi nhánh bạn muốn xóa.
  2. Bấm chuột phải vào nhánh bạn muốn xóa.
  3. Chọn tùy chọn Xóa từ menu ngữ cảnh.

Sau đó, khi đăng nhập vào tài khoản GitHub của bạn trực tuyến, hãy truy cập kho lưu trữ và nhấp vàoTất cả các chi nhánhtab. Từ đó, chỉ cần nhấp vào biểu tượng thùng rác nhỏ ở bên phải trên tên của brach bạn muốn xóa.

 enter image description here

* Hãy ghi nhớ - nếu chi nhánh không được xuất bản, không cần phải cố gắng xóa nó khỏi kho lưu trữ trực tuyến của bạn.

23
Uchiha Itachi

Tôi đã tạo hàm tiện lợi sau trong tệp .bash_aliases của mình:

git-delete-branch() 
{ 
    if [[ -n $1 ]]; then
        git checkout master > /dev/null;
        branch_name="$1";
        echo "Deleting local $branch_name branch...";
        git branch -D "$branch_name";
        echo "Deleting remote $branch_name branch...";
        git Push Origin --delete "$branch_name";
        git remote Prune Origin;
        echo "Your current branches are:";
        git branch -a;
    else
        echo "Usage: git-delete-branch <branch_name>";
    fi
}
19
Vagelis Prokopiou

Theo tài liệu mới nhất sử dụng thiết bị đầu cuối, chúng tôi có thể xóa theo cách sau.

xóa tại địa phương:

git branch -D usermanagement

xóa ở vị trí xa:

git Push --delete Origin usermanagement
19
KARTHIKEYAN.A

Nó rất đơn giản

Để xóa chi nhánh từ xa

git Push -d Origin <branch-name>

OR

git Push Origin :<branch-name>

Để xóa chi nhánh địa phương

git branch -D <branch-name>
15
Vivek Maru