Boto3 AWS Codecommit 删除文件夹
Boto3 AWS Codecommit Delete Folder
问题是您可以创建和更新多个文件,例如 .create_commit
。但是,您不能执行相反的操作,您可以使用文档中提到的功能 1 by 1 删除文件。
对于客户端,我使用 boto3
和 boto3.client('codecommit')
问题:
如何使用 boto3 和 aws codecommit?
删除文件夹
只有以下4种方法可用:
delete_branch()
delete_comment_content()
delete_file()
delete_repository()
要删除文件夹,请在对该文件夹中的最后一个文件调用 delete_file 时设置 keepEmptyFolders=False
。我不知道有哪个 API 函数会删除整个文件夹及其所有内容。
注意:默认情况下,调用delete_file时会删除空文件夹。
AWS 代码提交不允许删除 目录(文件夹)。这个实现有效,而不是一次删除整个目录,你找到所有的文件然后删除它们。
基本概述。
- 使用
.get_folder()
获取文件夹中的文件名请注意,他提供了更多信息*
- 清理
.get_folder
- 清理输出不仅仅是文件路径,我们只需要文件路径
- 提交(删除)
其中 REPOSITORY_NAME
是 存储库的名称,folderPath
是要删除的 文件夹的名称.
files = codecommit_client.get_folder(repositoryName=REPOSITORY_NAME, folderPath=PATH)
现在我们使用该信息来创建已删除文件的提交,我们必须进行一些操作,因为 deleteFiles 参数仅采用文件路径,而我们通过 .get_folder
获得的信息包含的不仅仅是文件路径。如果需要(目前主要)
请替换branchName
codecommit_client.create_commit(
repositoryName=REPOSITORY_NAME,
branchName='main',
parentCommitId=files['commitId'],
commitMessage=f"DELETED Files",
deleteFiles=[{'filePath':x['absolutePath']} for x in files['files']],
)
问题是您可以创建和更新多个文件,例如 .create_commit
。但是,您不能执行相反的操作,您可以使用文档中提到的功能 1 by 1 删除文件。
对于客户端,我使用 boto3
和 boto3.client('codecommit')
问题: 如何使用 boto3 和 aws codecommit?
删除文件夹只有以下4种方法可用:
delete_branch()
delete_comment_content()
delete_file()
delete_repository()
要删除文件夹,请在对该文件夹中的最后一个文件调用 delete_file 时设置 keepEmptyFolders=False
。我不知道有哪个 API 函数会删除整个文件夹及其所有内容。
注意:默认情况下,调用delete_file时会删除空文件夹。
AWS 代码提交不允许删除 目录(文件夹)。这个实现有效,而不是一次删除整个目录,你找到所有的文件然后删除它们。
基本概述。
- 使用
.get_folder()
获取文件夹中的文件名请注意,他提供了更多信息* - 清理
.get_folder
- 清理输出不仅仅是文件路径,我们只需要文件路径 - 提交(删除)
其中 REPOSITORY_NAME
是 存储库的名称,folderPath
是要删除的 文件夹的名称.
files = codecommit_client.get_folder(repositoryName=REPOSITORY_NAME, folderPath=PATH)
现在我们使用该信息来创建已删除文件的提交,我们必须进行一些操作,因为 deleteFiles 参数仅采用文件路径,而我们通过 .get_folder
获得的信息包含的不仅仅是文件路径。如果需要(目前主要)
branchName
codecommit_client.create_commit(
repositoryName=REPOSITORY_NAME,
branchName='main',
parentCommitId=files['commitId'],
commitMessage=f"DELETED Files",
deleteFiles=[{'filePath':x['absolutePath']} for x in files['files']],
)