🔧 AddVcsRepository
添加一个版本控制系统(VCS,如 Git、SVN)仓库作为 Composer 的包源,等价于在 composer.json 中添加一个 type 为 vcs 的仓库。
何时使用
当你需要从 GitHub / GitLab / Bitbucket 等 VCS 仓库直接拉取包时使用,常用于安装尚未发布到 Packagist 的私有包或开发分支。
签名
go
func (c *Composer) AddVcsRepository(name string, url string) error参数
| 参数 | 类型 | 说明 |
|---|---|---|
name | string | 仓库名称,作为 composer.json 中 repositories.<name> 的键 |
url | string | VCS 仓库的 URL,例如 https://github.com/vendor/package |
返回值
error:添加 VCS 仓库过程中发生错误时返回相应错误信息,成功时为 nil。
示例
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)
}
// 添加一个 GitHub 上的 VCS 仓库
if err := comp.AddVcsRepository("my-lib", "https://github.com/vendor/package"); err != nil {
log.Fatalf("添加 VCS 仓库失败: %v", err)
}
fmt.Println("VCS 仓库添加完成")
}进阶
- 添加 Composer 私有仓库源用
AddComposerRepository;添加本地路径用AddPathRepository。 - 添加后可用
ListRepositories查看所有已配置仓库。 - 不再需要某个仓库时用
RemoveRepository移除。 - 底层实现是
AddRepository(name, Repository{Type: VcsRepository, URL: url})。