mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-13 00:45:44 +01:00
fix name resolution for git repositories with working copy
This commit is contained in:
@@ -52,6 +52,9 @@ import sonia.scm.repository.RepositoryUtil;
|
|||||||
|
|
||||||
//~--- JDK imports ------------------------------------------------------------
|
//~--- JDK imports ------------------------------------------------------------
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -127,8 +130,9 @@ public class GitReceiveHook implements PreReceiveHook, PostReceiveHook
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
Repository repository = rpack.getRepository();
|
Repository repository = rpack.getRepository();
|
||||||
String repositoryName = RepositoryUtil.getRepositoryName(handler,
|
String repositoryName = resolveRepositoryName(repository);
|
||||||
repository.getDirectory());
|
|
||||||
|
logger.trace("resolved repository name to {}", repositoryName);
|
||||||
|
|
||||||
repositoryManager.fireHookEvent(GitRepositoryHandler.TYPE_NAME,
|
repositoryManager.fireHookEvent(GitRepositoryHandler.TYPE_NAME,
|
||||||
repositoryName,
|
repositoryName,
|
||||||
@@ -147,7 +151,6 @@ public class GitReceiveHook implements PreReceiveHook, PostReceiveHook
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @param rpack
|
* @param rpack
|
||||||
* @param receiveCommands
|
|
||||||
* @param commands
|
* @param commands
|
||||||
* @param type
|
* @param type
|
||||||
*/
|
*/
|
||||||
@@ -174,6 +177,32 @@ public class GitReceiveHook implements PreReceiveHook, PostReceiveHook
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resolve the name of the repository.
|
||||||
|
* This method was introduced to fix issue #415.
|
||||||
|
*
|
||||||
|
* @param repository jgit repository
|
||||||
|
*
|
||||||
|
* @return name of repository
|
||||||
|
*
|
||||||
|
* @throws IOException
|
||||||
|
*/
|
||||||
|
private String resolveRepositoryName(Repository repository) throws IOException
|
||||||
|
{
|
||||||
|
File directory;
|
||||||
|
|
||||||
|
if (repository.isBare())
|
||||||
|
{
|
||||||
|
directory = repository.getDirectory();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
directory = repository.getWorkTree();
|
||||||
|
}
|
||||||
|
|
||||||
|
return RepositoryUtil.getRepositoryName(handler, directory);
|
||||||
|
}
|
||||||
|
|
||||||
//~--- fields ---------------------------------------------------------------
|
//~--- fields ---------------------------------------------------------------
|
||||||
|
|
||||||
/** Field description */
|
/** Field description */
|
||||||
|
|||||||
Reference in New Issue
Block a user