Skip to content

🗜️ Archive

创建当前项目的归档文件(ZIP 格式,不含开发依赖)。等价于执行 composer archive --format=zip --dir=<destination>

何时使用

当需要把项目打包成可分发的压缩包(如交付给客户、上传到制品库)时使用。

签名

go
func (c *Composer) Archive(destination string) (string, error)

参数

参数类型说明
destinationstring存储归档文件的目标目录路径

返回值

返回值类型说明
第一返回值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)。

基于 MIT 许可证发布