From 193d041306e5e669a4e9e7a965e2d3cae6f01a62 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Sun, 19 Jan 2025 03:45:10 -0600 Subject: git checkout on readonly repos --- doCheckout.go | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'doCheckout.go') diff --git a/doCheckout.go b/doCheckout.go index b168da3..85f73b3 100644 --- a/doCheckout.go +++ b/doCheckout.go @@ -140,16 +140,25 @@ func doAllCheckoutDevel() error { } func rillCheckoutMaster(repo *gitpb.Repo) error { + if repo.IsDirty() { + // never do dirty repos + return nil + } + if repo.GetCurrentBranchName() == repo.GetMasterBranchName() { + // repo is already on master + return nil + } if repo.GetUserVersion() != repo.GetDevelVersion() { - // don't switch braches if the user branch has uncommitted patches + // don't switch branches if the user branch has uncommitted patches return nil } - if repo.GetDevelVersion() != repo.GetMasterVersion() { - // don't switch braches if the devel branch does not match master (needs merge) + if me.forge.Config.IsReadOnly(repo.GetGoPath()) { + // skip other checks for readonly repos + repo.CheckoutMaster() return nil } - if repo.GetCurrentBranchName() == repo.GetMasterBranchName() { - // repo is already on master + if repo.GetDevelVersion() != repo.GetMasterVersion() { + // don't switch braches if the devel branch does not match master (needs merge) return nil } repo.CheckoutMaster() -- cgit v1.2.3