From 98e366deccae918bcdec92d2e63c841cb312377b Mon Sep 17 00:00:00 2001 From: Saba Saba Date: Thu, 9 Feb 2023 12:26:23 -0500 Subject: [PATCH] Hiding delete-branches. Also added flag for forced deletion of branches. --- git-repl.cl | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/git-repl.cl b/git-repl.cl index d3bfda2..626990d 100644 --- a/git-repl.cl +++ b/git-repl.cl @@ -201,17 +201,20 @@ "Deletes the given local branch name" (git "branch" "-d" branch-name)) -(defun-public delete-branches (is-merged) - "Deletes every local branch covered by \'git branch --merged\' or \'git branch --no-merged\' based on the value of the argument \'is-merged\'." - (git-chunked-command "branch" "-d" (git "branch" (if is-merged "--merged" "--no-merged")))) - -(defun-public delete-merged-branches () - "Deletes every local branch covered by \'git branch --merged\'" - (delete-branches t)) - -(defun-public delete-no-merged-branches () - "Deletes every local branch covered by \'git branch --no-merged\'" - (delete-branches nil)) +(defun delete-branches (is-merged force-delete) + "Deletes every local branch covered by \'git branch --merged\' or \'git branch --no-merged\' based on the value of the argument \'is-merged\'. + When force-delete is true, forces the deletion of the branch even if it has unmerged changes." + (git-chunked-command "branch" (if force-delete "-D" "-d") (git "branch" (if is-merged "--merged" "--no-merged")))) + +(defun-public delete-merged-branches (&key (force-delete nil)) + "Deletes every local branch covered by \'git branch --merged\'. + When :force-delete is set to T (default is NIL), forces the deletion of the branch even if it has unmerged changes." + (delete-branches t force-delete)) + +(defun-public delete-no-merged-branches (&key (force-delete nil)) + "Deletes every local branch covered by \'git branch --no-merged\'. + When :force-delete is set to T (default is NIL), forces the deletion of the branch even if it has unmerged changes." + (delete-branches nil force-delete)) (defun-public rebase (revision &key (without-config nil)) "Performs a rebase -- 2.20.1