mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-09 15:05:50 +01:00
Tweak directory processing
This commit is contained in:
@@ -119,19 +119,24 @@ trait RepositorySettingsControllerBase extends ControllerBase {
|
|||||||
renameRepository(repository.owner, repository.name, repository.owner, form.repositoryName)
|
renameRepository(repository.owner, repository.name, repository.owner, form.repositoryName)
|
||||||
// Move git repository
|
// Move git repository
|
||||||
defining(getRepositoryDir(repository.owner, repository.name)){ dir =>
|
defining(getRepositoryDir(repository.owner, repository.name)){ dir =>
|
||||||
FileUtils.moveDirectory(dir, getRepositoryDir(repository.owner, form.repositoryName))
|
if(dir.isDirectory){
|
||||||
|
FileUtils.moveDirectory(dir, getRepositoryDir(repository.owner, form.repositoryName))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Move wiki repository
|
// Move wiki repository
|
||||||
defining(getWikiRepositoryDir(repository.owner, repository.name)){ dir =>
|
defining(getWikiRepositoryDir(repository.owner, repository.name)){ dir =>
|
||||||
FileUtils.moveDirectory(dir, getWikiRepositoryDir(repository.owner, form.repositoryName))
|
if(dir.isDirectory) {
|
||||||
|
FileUtils.moveDirectory(dir, getWikiRepositoryDir(repository.owner, form.repositoryName))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Move lfs directory
|
// Move lfs directory
|
||||||
defining(getLfsDir(repository.owner, repository.name)){ dir =>
|
defining(getLfsDir(repository.owner, repository.name)){ dir =>
|
||||||
if(dir.isDirectory()) {
|
if(dir.isDirectory) {
|
||||||
FileUtils.moveDirectory(dir, getLfsDir(repository.owner, form.repositoryName))
|
FileUtils.moveDirectory(dir, getLfsDir(repository.owner, form.repositoryName))
|
||||||
FileUtil.deleteDirectoryIfEmpty(dir.getParentFile())
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Delete parent directory
|
||||||
|
FileUtil.deleteDirectoryIfEmpty(getRepositoryFilesDir(repository.owner, repository.name))
|
||||||
}
|
}
|
||||||
flash += "info" -> "Repository settings has been updated."
|
flash += "info" -> "Repository settings has been updated."
|
||||||
redirect(s"/${repository.owner}/${form.repositoryName}/settings/options")
|
redirect(s"/${repository.owner}/${form.repositoryName}/settings/options")
|
||||||
@@ -324,19 +329,24 @@ trait RepositorySettingsControllerBase extends ControllerBase {
|
|||||||
renameRepository(repository.owner, repository.name, form.newOwner, repository.name)
|
renameRepository(repository.owner, repository.name, form.newOwner, repository.name)
|
||||||
// Move git repository
|
// Move git repository
|
||||||
defining(getRepositoryDir(repository.owner, repository.name)){ dir =>
|
defining(getRepositoryDir(repository.owner, repository.name)){ dir =>
|
||||||
FileUtils.moveDirectory(dir, getRepositoryDir(form.newOwner, repository.name))
|
if(dir.isDirectory){
|
||||||
|
FileUtils.moveDirectory(dir, getRepositoryDir(form.newOwner, repository.name))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Move wiki repository
|
// Move wiki repository
|
||||||
defining(getWikiRepositoryDir(repository.owner, repository.name)){ dir =>
|
defining(getWikiRepositoryDir(repository.owner, repository.name)){ dir =>
|
||||||
FileUtils.moveDirectory(dir, getWikiRepositoryDir(form.newOwner, repository.name))
|
if(dir.isDirectory) {
|
||||||
|
FileUtils.moveDirectory(dir, getWikiRepositoryDir(form.newOwner, repository.name))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Move lfs directory
|
// Move lfs directory
|
||||||
defining(getLfsDir(repository.owner, repository.name)){ dir =>
|
defining(getLfsDir(repository.owner, repository.name)){ dir =>
|
||||||
if(dir.isDirectory()) {
|
if(dir.isDirectory()) {
|
||||||
FileUtils.moveDirectory(dir, getLfsDir(form.newOwner, repository.name))
|
FileUtils.moveDirectory(dir, getLfsDir(form.newOwner, repository.name))
|
||||||
FileUtil.deleteDirectoryIfEmpty(dir.getParentFile())
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Delere parent directory
|
||||||
|
FileUtil.deleteDirectoryIfEmpty(getRepositoryFilesDir(repository.owner, repository.name))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
redirect(s"/${form.newOwner}/${repository.name}")
|
redirect(s"/${form.newOwner}/${repository.name}")
|
||||||
|
|||||||
@@ -42,22 +42,29 @@ object Directory {
|
|||||||
def getRepositoryDir(owner: String, repository: String): File =
|
def getRepositoryDir(owner: String, repository: String): File =
|
||||||
new File(s"${RepositoryHome}/${owner}/${repository}.git")
|
new File(s"${RepositoryHome}/${owner}/${repository}.git")
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Directory for repository files.
|
||||||
|
*/
|
||||||
|
def getRepositoryFilesDir(owner: String, repository: String): File =
|
||||||
|
new File(s"${RepositoryHome}/${owner}/${repository}")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Directory for files which are attached to issue.
|
* Directory for files which are attached to issue.
|
||||||
*/
|
*/
|
||||||
def getAttachedDir(owner: String, repository: String): File =
|
def getAttachedDir(owner: String, repository: String): File =
|
||||||
new File(s"${RepositoryHome}/${owner}/${repository}/comments")
|
new File(getRepositoryFilesDir(owner, repository), "comments")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Directory for files which are attached to issue.
|
* Directory for files which are attached to issue.
|
||||||
*/
|
*/
|
||||||
def getLfsDir(owner: String, repository: String): File =
|
def getLfsDir(owner: String, repository: String): File =
|
||||||
new File(s"${RepositoryHome}/${owner}/${repository}/lfs")
|
new File(getRepositoryFilesDir(owner, repository), "lfs")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Directory for uploaded files by the specified user.
|
* Directory for uploaded files by the specified user.
|
||||||
*/
|
*/
|
||||||
def getUserUploadDir(userName: String): File = new File(s"${GitBucketHome}/data/${userName}/files")
|
def getUserUploadDir(userName: String): File =
|
||||||
|
new File(s"${GitBucketHome}/data/${userName}/files")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Root of temporary directories for the upload file.
|
* Root of temporary directories for the upload file.
|
||||||
@@ -74,7 +81,8 @@ object Directory {
|
|||||||
/**
|
/**
|
||||||
* Root of plugin cache directory. Plugin repositories are cloned into this directory.
|
* Root of plugin cache directory. Plugin repositories are cloned into this directory.
|
||||||
*/
|
*/
|
||||||
def getPluginCacheDir(): File = new File(s"${TemporaryHome}/_plugins")
|
def getPluginCacheDir(): File =
|
||||||
|
new File(s"${TemporaryHome}/_plugins")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Substance directory of the wiki repository.
|
* Substance directory of the wiki repository.
|
||||||
|
|||||||
Reference in New Issue
Block a user