【问题标题】:Using Github, CakePHP 3 and Composer使用 Github、CakePHP 3 和 Composer
【发布时间】:2023-03-07 14:46:02
【问题描述】:

我正在尝试在 GitHub 上通过多个工作站找到使用 CakePHP 3 的最佳方式。

场景:我已将带有 Composer 的 CakePHP 3 安装到一个新目录中,并使用 github cli 从它创建了一个 git 存储库。使用随 cakephp 提供的默认 .gitignore。将 repo 推送到远程服务器后,我开始着手该项目。

后来在家里想继续工作,遇到了以下问题: Composer 和 GitHub(CLI 和 GUI)都需要一个空文件夹来安装 cakephp 核心或克隆 repo。那么,在不删除 .gitignore 并将整个 cakephp 核心推送到 repo 的情况下,解决该问题的最佳方法是什么?

【问题讨论】:

    标签: git cakephp github gitignore


    【解决方案1】:

    如果 composer 全局安装在您的家庭计算机中,克隆后只需在您的项目文件夹中使用以下命令。

    composer update
    

    这个命令只需要第一次。然后cakephp核心将自动下载。然后它会正常工作。我认为这是一个简单的解决方案。

    复杂的解决方案是,您可以更改 git ignore 文件,然后创建 repo,在您的家庭计算机中克隆后再次更改 git ignore 文件。

    【讨论】:

    • 请原谅我迟到的回答,我一直在度假。您的简单解决方案就像一个魅力。我只需要自己复制 config/app.php。非常感谢!
    • 但是compose update 也会升级你的包吗?为什么不是项目文件夹中的composer install?这两种解决方案都创建了蛋糕应用程序,但缺少带有蛋糕外壳的 bin/ 文件夹,但 update 命令也会更改 composer.lock 文件
    【解决方案2】:

    当你在另一台机器上从 github 拉取时:

    1. 全局安装作曲家:curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
    2. 从 github 克隆你的 repo,例如git clone git@github.com:myuser/cakephpapp.git cakeapp
    3. 进入您的仓库,例如cd cakeapp 然后运行 ​​composer install

    您的bin 文件夹将丢失,除非它已提交到您的存储库。您可以通过创建一个新的 cakephp 应用然后复制它来获得另一个副本:

    1. 创建新的 cakephp 应用程序:composer create-project --prefer-dist cakephp/app tempapp
    2. 复制bin目录:mv tempapp/bin/ ./bin
    3. 删除新应用:rm -rf tempapp/

    如果您不小心升级了您的软件包或更改了您的 composer.lock 文件(并且没有更改代码),您可以在不删除 bin/ 的情况下重置 repo(这应该在您的 .gitignore 中)

    1. git reset --hard HEAD
    2. git pull origin master

    【讨论】:

      猜你喜欢
      • 2017-07-23
      • 2015-08-11
      • 1970-01-01
      • 2016-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-31
      相关资源
      最近更新 更多