From 90b8d7e0e1b5e5ed296c1213168b9a8937ac66fd Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Thu, 02 Feb 2012 20:02:40 -0500 Subject: [PATCH] Refactored and unit tested updating HEAD feature --- src/com/gitblit/GitBlit.java | 19 +++++++++---------- 1 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/com/gitblit/GitBlit.java b/src/com/gitblit/GitBlit.java index 9712ea6..a689b48 100644 --- a/src/com/gitblit/GitBlit.java +++ b/src/com/gitblit/GitBlit.java @@ -786,8 +786,8 @@ model.mailingLists = new ArrayList<String>(Arrays.asList(config.getStringList( "gitblit", null, "mailingList"))); } - model.defaultHead = JGitUtils.getSymbolicHeadTarget(r); - model.availableHeads = JGitUtils.getAvailableHeadTargets(r); + model.HEAD = JGitUtils.getHEADRef(r); + model.availableRefs = JGitUtils.getAvailableHeadTargets(r); r.close(); return model; } @@ -984,15 +984,14 @@ if (r != null) { updateConfiguration(r, repository); // only update symbolic head if it changes - String currentHead = JGitUtils.getSymbolicHeadTarget(r); - if (!StringUtils.isEmpty(repository.defaultHead) && - !repository.defaultHead.equals(currentHead)) { + String currentRef = JGitUtils.getHEADRef(r); + if (!StringUtils.isEmpty(repository.HEAD) && !repository.HEAD.equals(currentRef)) { logger.info(MessageFormat.format("Relinking {0} HEAD from {1} to {2}", - repository.name, currentHead, repository.defaultHead)); - JGitUtils.setSymbolicHeadTarget(r, repository.defaultHead); - - // clear the cache - clearRepositoryCache(repository.name); + repository.name, currentRef, repository.HEAD)); + if (JGitUtils.setHEADtoRef(r, repository.HEAD)) { + // clear the cache + clearRepositoryCache(repository.name); + } } // close the repository object -- Gitblit v1.9.1