S3 中对象的每个版本都是(某种程度上)一个单独的对象。他们只是碰巧共享相同的密钥。
不可能将对象及其所有版本一起复制。
相反,您需要单独复制每个版本,从最早的版本开始到最新的版本(以便它们以正确的顺序“堆叠”)。
可以使用CopyObject()
方法执行复制,指定sourceVersionId
. 新复制的版本将具有不同的 ID。
Same-Region Replication 和 Cross-Region Replication 可以保留对象版本,但只能复制到不同的存储桶(不能复制到不同的目录)。