提交 0a25f93c 编写于 作者: S Shawn O. Pearce

git-gui: Allow users to delete branches merged upstream.

Most of the time when you are deleting branches you want to delete
those which have been merged into your upstream source.  Typically
that means it has been merged into the tip commit of some tracking
branch, and the current branch (or any other head) doesn't matter.
Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
上级 887412d4
......@@ -1891,7 +1891,7 @@ Delete the above branches?}
}
proc do_delete_branch {} {
global all_heads current_branch
global all_heads tracking_branches current_branch
global delete_branch_checkhead delete_branch_head
set delete_branch_checkhead 1
......@@ -1932,15 +1932,23 @@ proc do_delete_branch {} {
pack $w.list.l -fill both -pady 5 -padx 5
pack $w.list -fill both -pady 5 -padx 5
set all_trackings [list]
foreach b [array names tracking_branches] {
regsub ^refs/(heads|remotes)/ $b {} b
lappend all_trackings $b
}
labelframe $w.validate \
-text {Only Delete If} \
-font font_ui
frame $w.validate.head
checkbutton $w.validate.head.r \
-text {Already Merged Into Local Branch:} \
-text {Already Merged Into:} \
-variable delete_branch_checkhead \
-font font_ui
eval tk_optionMenu $w.validate.head.m delete_branch_head $all_heads
eval tk_optionMenu $w.validate.head.m delete_branch_head \
$all_heads \
[lsort -unique $all_trackings]
pack $w.validate.head.r -side left
pack $w.validate.head.m -side left
pack $w.validate.head -padx 5 -fill x -expand 1
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册