mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-06 21:45:50 +01:00
(refs #367)Redirect if forked repository already exists
This commit is contained in:
@@ -355,14 +355,10 @@ trait AccountControllerBase extends AccountManagementControllerBase {
|
|||||||
val loginUserName = loginAccount.userName
|
val loginUserName = loginAccount.userName
|
||||||
|
|
||||||
LockUtil.lock(s"${loginUserName}/${repository.name}/create"){
|
LockUtil.lock(s"${loginUserName}/${repository.name}/create"){
|
||||||
if(repository.owner == loginUserName){
|
if(repository.owner == loginUserName || getRepository(loginAccount.userName, repository.name, baseUrl).isDefined){
|
||||||
// redirect to the repository
|
// redirect to the repository if repository already exists
|
||||||
redirect(s"/${repository.owner}/${repository.name}")
|
redirect(s"/${loginUserName}/${repository.name}")
|
||||||
} else {
|
} else {
|
||||||
getForkedRepositories(repository.owner, repository.name).find(_._1 == loginUserName).map { case (owner, name) =>
|
|
||||||
// redirect to the repository
|
|
||||||
redirect(s"/${owner}/${name}")
|
|
||||||
} getOrElse {
|
|
||||||
// Insert to the database at first
|
// Insert to the database at first
|
||||||
val originUserName = repository.repository.originUserName.getOrElse(repository.owner)
|
val originUserName = repository.repository.originUserName.getOrElse(repository.owner)
|
||||||
val originRepositoryName = repository.repository.originRepositoryName.getOrElse(repository.name)
|
val originRepositoryName = repository.repository.originRepositoryName.getOrElse(repository.name)
|
||||||
@@ -397,7 +393,6 @@ trait AccountControllerBase extends AccountManagementControllerBase {
|
|||||||
redirect(s"/${loginUserName}/${repository.name}")
|
redirect(s"/${loginUserName}/${repository.name}")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
|
||||||
private def insertDefaultLabels(userName: String, repositoryName: String): Unit = {
|
private def insertDefaultLabels(userName: String, repositoryName: String): Unit = {
|
||||||
|
|||||||
Reference in New Issue
Block a user