当您将像Laravel这样的repo克隆到现有项目中时,即使您不打算贡献,也可以将其作为子模块将其拉入?

时间:2014-12-30 22:06:15

标签: git github

当你创建自己的项目仓库时,我对你做了什么感到困惑,然后我想像Laravel 4那样添加另一个仓库。从Git Pro来看,子模块可能就是我想要的,如果是这样做的方式,就类似命名的文件如readme.md会产生冲突吗?这是我正在寻找的还是有另一种解决方案?

更新: 目前我正在将laravel克隆到我的/ root,然后删除关联的.git文件夹,然后克隆我们的基本安装文件,包括package.json,bower.json,/ docs,/ config /等等;进入我的/ root,删除.git文件夹,然后调用composer install和npm install,运行git init,最后在BitBucket上推送项目远程git repo。为每个克隆的repo删除.git看起来很奇怪(这引发了这个问题),所以我在一些搜索之后想到子模块,但子模块安装到子文件夹,我不想要,因为这不允许所有的CLI都是在一个层面,除其他外。

1 个答案:

答案 0 :(得分:2)

您不应该需要子模块 一旦Laravel is installed,您可以按照此Laravel recipe使用Git管理您的应用程序,前提是您的应用程序是Laravel项目。

laravel:~$ cd myapp
laravel:~/myapp$ git init
  

请注意,文件composer.lock未被跟踪?您应该修改.gitignore并删除其中包含composer.lock的行。这样您就可以跟踪composer.lock

     

当您使用源代码控制系统跟踪composer.lock时,它允许您在开发计算机上执行composer update,然后在生产计算机上执行composer install。 />   composer install命令将确保所有包都是composer.lock文件中指定的正确版本。因此,生产不仅使用相同的包,而且使用与生产机器相同的包版本

laravel:~/myapp$ git config --global user.email "you@example.com"
laravel:~/myapp$ git config --global user.name "Your Name"

laravel:~/myapp$ git add .
laravel:~/myapp$ git commit -m "initial checkin"