使用 --keep-vcs 参数可保留源项目 Git 信息,适用于需继承提交历史的开发场景;执行 composer create-project 命令时添加该参数,如:composer create-project laravel/laravel my-app --keep-vcs,生成的项目将包含 .git 目录,便于追溯历史或合规审计,但需及时修改远程仓库地址避免误提交。

使用 composer create-project --keep-vcs 命令可以在创建新项目时保留版本控制信息(即 .git 目录),方便你立即进行代码管理,而不需要重新初始化仓库。
作用说明
默认情况下,Composer 在通过 create-project 创建项目时会自动删除源码中的 .git 目录,避免新项目继承原项目的提交历史。加上 --keep-vcs 参数后,Composer 将不再删除这些版本控制文件,适用于你需要基于某个开源项目继续开发并保留其 Git 历史记录的场景。基本用法
命令格式如下:composer create-project vendor/package-name project-directory --keep-vcs例如,你想基于 Laravel 框架的一个示例应用启动项目,并保留其 Git 记录:
composer create-project laravel/laravel my-app --keep-vcs执行后,my-app 目录中会包含完整的 .git 文件夹,你可以直接使用 git log 查看原有提交历史,也可以在此基础上新建分支或连接远程仓库。
适用场景
- 从开源模板或脚手架项目开始,希望保留原始提交记录以便追溯
- 团队内部复用已有项目结构,同时延续版本控制历史
- 需要将原项目的 Git 提交信息用于合规或审计用途
注意事项
保留 VCS 信息后,你的新项目仍指向原项目的远程仓库地址。建议尽快运行以下命令修改为新的仓库地址:git remote set-url origin https://your-new-repo-url.git否则推送代码可能会误提交到原项目。 基本上就这些,合理使用 --keep-vcs 能提升项目初始化效率,尤其适合定制化开发场景。











