如何在考虑供应商忽略的情况下克隆我自己的Laravel项目

时间:2016-01-02 21:16:51

标签: git laravel-5 homestead

我正在寻找有关处理Laravel项目整个设置过程的帮助。 目前这是我的演练列表:

  • 安装Virtual Box和Vagrant。
  • 运行vagrant box add laravel/homestead
  • 使用您最喜爱的Bash(在我的情况下,我正在使用Git BASH,因为我使用的是Windows 10 )在你喜欢的文件夹上运行git clone https://github.com/laravel/homestead.git Homestead
  • 使用ssh-keygen -t rsa -C "email@domain.blah"
  • 设置SSH密钥
  • 设置SSH连接器文件[¹]。
  • 按照您的意愿设置您的Homestead.yaml。
  • 运行init.sh / init.bat
  • SSH进入Vagrant。
  • 运行composer global require "laravel/installer"
  • 运行laravel new project
  • 返回主机,进入项目文件夹并运行git initgit add .git commit -m "clean project"
  • 使用git remote add origin https://bitbucket.org/you/yourprojectgit push -u origin --all
  • 推送项目

现在我有一个全新的Laravel项目与Git挂钩进行版本控制。我的问题是Laravel默认忽略/vendor。考虑到这个事实,我想在另一台计算机上克隆我的项目,因为我有两台计算机可以工作和/或一个同事想要克隆同一个项目,所以我们可以一起处理它。

克隆项目并让Laravel在另一台机器上工作的正确演练是什么?我是否必须将/vendor添加到存储库并推送?我应该将宅基地箱添加到存储库中吗?如果是这样,怎么样?

提前致谢。

[¹]
Host homestead
HostName 127.0.0.1
User vagrant
Port 2222

1 个答案:

答案 0 :(得分:21)

确保您的Git存储库包含composer.json(包设置)和composer.lock(可选,但由Composer推荐以确保所有服务器上的100%版本匹配)文件,但不包括'供应商'文件夹或.env文件(目前看起来你正在添加' git add。' - 这是不安全的)。部署('克隆')您的代码的标准做法是:

  1. git clone https://bitbucket.org/you/yourproject(在远程计算机上)
  2. cd yourproject
  3. composer install(这将创建' vendor'文件夹并下载所有包)
  4. 创建和编辑.env文件
  5. 非常简单!

    此外,您可以在Internet上找到许多可以在BitBucket存储库更新时自动部署应用程序的服务。