🗜️ Archive
创建当前项目的归档文件(ZIP 格式,不含开发依赖)。等价于执行 composer archive --format=zip --dir=<destination>。
何时使用
当需要把项目打包成可分发的压缩包(如交付给客户、上传到制品库)时使用。
签名
go
func (c *Composer) Archive(destination string) (string, error)参数
| 参数 | 类型 | 说明 |
|---|---|---|
destination | string | 存储归档文件的目标目录路径 |
返回值
| 返回值 | 类型 | 说明 |
|---|---|---|
| 第一返回值 | string | 归档命令的输出 |
| 第二返回值 | error | 创建归档失败时返回 |
示例
go
package main
import (
"fmt"
"log"
"github.com/scagogogo/composer-skills/pkg/composer"
)
func main() {
comp, err := composer.New(composer.DefaultOptions())
if err != nil {
log.Fatalf("初始化失败: %v", err)
}
output, err := comp.Archive("/tmp/project-archive")
if err != nil {
log.Fatalf("创建归档失败: %v", err)
}
fmt.Println("归档结果:", output)
}进阶
- 需要指定
tar等其他格式用 ArchiveWithFormat 的同族方法ArchiveWithFormat。 - 归档某个具体包(而非整个项目)用 ArchivePackage。
- 需要自定义多个选项时用
ArchiveWithOptions(位于archive.go)。