From 6c645cb22ab96a8154053071360f4e45523733ce Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Sat, 4 Oct 2025 17:37:09 -0500 Subject: attempt to clean/delete user branches --- doClean.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'doClean.go') diff --git a/doClean.go b/doClean.go index 797d273..40c3272 100644 --- a/doClean.go +++ b/doClean.go @@ -171,8 +171,17 @@ func doRepoCleanUser(repo *gitpb.Repo) error { bruser := repo.GetUserBranchName() brdevel := repo.GetDevelBranchName() + brmaster := repo.GetMasterBranchName() if repo.IsBranchRemote(bruser) { + b1 := repo.CountDiffObjects(bruser, "refs/heads/"+brdevel) // should be zero + if b1 == 0 { + log.Info("Local user branch is safe to delete", bruser) + } + b2 := repo.CountDiffObjects("refs/heads/"+bruser, "refs/heads/"+brmaster) // should be zero + if b2 == 0 { + log.Info("Local remote branch is safe to delete (is completely in master)", bruser) + } log.Info("forge is designed to always have local only user branches", bruser) return fmt.Errorf("forge is designed to always have local only user branches") } @@ -197,8 +206,6 @@ func doRepoCleanUser(repo *gitpb.Repo) error { } } - brmaster := repo.GetMasterBranchName() - // will you loose work if you delete your user branch? // if master branch exists() // then if all user commits exist in master -- cgit v1.2.3