这是为了更好地理解作曲家的内部工作,我在互联网上的其他地方甚至作曲家文档中都没有找到任何答案。
创建composer.json
文件时,我通常使用命令行composer init
,package
名称默认为我的 pc 名称,vendor
为当前文件夹名称。一切都很棒。
现在在author
,它会自动使用my name <my Hotmail Account>
。据我所知,这些信息没有存储在我计算机上的任何地方。我只有一个个人资料/用户(只有一个用户是管理员,没有电子邮件或真实姓名的详细信息)。
我已经安装了GitHub,PHP,Ruby on Rails,XAMPP,并且没有安装任何Windows Live。
现在,它从哪里获取这些信息?我最好的猜测来自GitHub信息,这是唯一拥有这些信息的东西,但我想确认一下。
你是对的,Composer 从你的 Git 配置中获取信息。
GitHub 上的以下两行 Composer 1.3 源代码清楚地表明了这一点:
- https://github.com/composer/composer/blob/1.3.0/src/Composer/Command/InitCommand.php#L240
- https://github.com/composer/composer/blob/1.3.0/src/Composer/Command/InitCommand.php#L497
第 240 行:
if (null === $author = $input->getOption('author')) {
if (isset($git['user.name']) && isset($git['user.email'])) {
$author = sprintf('%s <%s>', $git['user.name'], $git['user.email']);
}
}