【问题标题】:How to clone my own Laravel project considering vendor ignored考虑到供应商被忽略,如何克隆我自己的 Laravel 项目
【发布时间】:2016-04-06 20:47:00
【问题描述】:

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

  • 安装 Virtual Box 和 Vagrant。
  • 运行vagrant box add laravel/homestead
  • 在你最喜欢的文件夹上运行git clone https://github.com/laravel/homestead.git Homestead,使用你最喜欢的 Bash(在我的例子中,我使用的是 Git BASH,因为我在 Windows 10 上
  • 使用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。考虑到这一事实,我想在另一台计算机上克隆我的项目,因为我有 2 台计算机要工作和/或一位同事想要克隆同一个项目,以便我们可以一起工作。

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

提前致谢。

[¹]
Host homestead
HostName 127.0.0.1
User vagrant
Port 2222

【问题讨论】:

    标签: git laravel-5 homestead


    【解决方案1】:

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

    1. git clone https://bitbucket.org/you/yourproject(在远程机器上)
    2. cd yourproject
    3. composer 安装(这将创建 'vendor' 文件夹并下载所有包)
    4. 创建和编辑 .env 文件

    真的很简单!

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

    【讨论】:

    • 理想情况下,composer.lock 文件也应该被提交。这确保了比单独使用 composer.json 更高的一致性,这实际上可能非常松散,具体取决于您添加依赖项的方式。
    • npm install 也应该在此列表中。
    猜你喜欢
    • 2015-04-11
    • 2017-06-13
    • 2017-01-11
    • 1970-01-01
    • 2014-02-26
    • 2022-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多