From a08e6f95864eb9a7ea8a1003083938f8bbc648c7 Mon Sep 17 00:00:00 2001 From: James Moger Date: Fri, 5 Sep 2014 19:19:32 -0400 Subject: [PATCH] New forks shall respect the source repository access restriction If the source repository access restriction exceeds the fork default (push) then the fork shall inherit the source repository access restriction. --- src/main/java/com/gitblit/manager/GitblitManager.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/main/java/com/gitblit/manager/GitblitManager.java b/src/main/java/com/gitblit/manager/GitblitManager.java index 98ad33e7..b9ae122f 100644 --- a/src/main/java/com/gitblit/manager/GitblitManager.java +++ b/src/main/java/com/gitblit/manager/GitblitManager.java @@ -216,6 +216,13 @@ public class GitblitManager implements IGitblit { RepositoryModel cloneModel = repository.cloneAs(cloneName); // owner has REWIND/RW+ permissions cloneModel.addOwner(user.username); + + // ensure initial access restriction of the fork + // is not lower than the source repository (issue-495/ticket-167) + if (repository.accessRestriction.exceeds(cloneModel.accessRestriction)) { + cloneModel.accessRestriction = repository.accessRestriction; + } + repositoryManager.updateRepositoryModel(cloneName, cloneModel, false); // add the owner of the source repository to the clone's access list -- 2.39.5