diff --git a/scm-core/src/main/java/sonia/scm/repository/api/BrowseCommandBuilder.java b/scm-core/src/main/java/sonia/scm/repository/api/BrowseCommandBuilder.java
index 4ca46a54ff..c23d5efb3c 100644
--- a/scm-core/src/main/java/sonia/scm/repository/api/BrowseCommandBuilder.java
+++ b/scm-core/src/main/java/sonia/scm/repository/api/BrowseCommandBuilder.java
@@ -43,6 +43,8 @@ import org.slf4j.LoggerFactory;
import sonia.scm.cache.Cache;
import sonia.scm.cache.CacheManager;
import sonia.scm.repository.BrowserResult;
+import sonia.scm.repository.FileObject;
+import sonia.scm.repository.FileObjectNameComparator;
import sonia.scm.repository.PreProcessorUtil;
import sonia.scm.repository.Repository;
import sonia.scm.repository.RepositoryCacheKey;
@@ -55,6 +57,9 @@ import sonia.scm.repository.spi.BrowseCommandRequest;
import java.io.IOException;
import java.io.Serializable;
+import java.util.Collections;
+import java.util.List;
+
/**
* BrowseCommandBuilder is able to browse the files of a {@link Repository}.
*
@@ -180,6 +185,14 @@ public final class BrowseCommandBuilder
if (!disablePreProcessors && (result != null))
{
preProcessorUtil.prepareForReturn(repository, result);
+
+ List fileObjects = result.getFiles();
+
+ if (fileObjects != null)
+ {
+ Collections.sort(fileObjects, FileObjectNameComparator.instance);
+ result.setFiles(fileObjects);
+ }
}
return result;