Symfony2 - 创建自己的供应商包 - 项目和 git 策略

2023-11-27

我们正在考虑创建自己的common用于实体映射和服务的捆绑包,可在几个单独的应用程序中使用。捆绑包应该易于修改、运行、包含和测试。我知道关于构建捆绑包的最佳实践,但我不知道什么git开发时使用的策略。

我们是否应该创建common捆绑为整个项目并将整个存储库提交到我们的 git 服务器,或者最好仅针对根目录启动源代码控制common捆绑并仅推送其内容?我在捆绑包中看到了这种方法github,但我不知道以这种方式开发捆绑包的简单而舒适的方法。


创建一个新的空 symfony 项目

php composer.phar create-project symfony/framework-standard-edition demo/ 2.4.1
cd demo

生成一个新的包

(例如src/Company/DemoBundle)

php app/console generate:bundle
cd src/Company/DemoBundle/

初始化你的 github 存储库src/Company/DemoBundle

git init
touch README.md
git add .
git commit -m "initial commit"
git remote add origin https://github.com/YourAccount/DemoBundle.git
git push -u origin master

添加composer.json文件

src/Company/DemoBundle/composer.json:

{
    "name" : "company/demobundle",
    "description" : "A demo bundle",
    "type" : "symfony-bundle",
    "authors" : [{
        "name" : "demo",
        "email" : "[email protected]"
    }],
    "keywords" : [
        "demo bundle"
    ],
    "license" : [
        "MIT"
    ],
    "require" : {
    },
    "autoload" : {
        "psr-0" : {
            "Company\\DemoBundle" : ""
        }
    },
    "target-dir" : "Company/DemoBundle",
    "repositories" : [{
    }],
    "extra" : {
    "branch-alias" : {
            "dev-master" : "some_version-dev"
        }
    }
}

现在您已经有了捆绑包的基本结构

在另一个项目中使用它

作曲家.json:

    [...]
    "require" : {
        [...]
        "company/demobundle" : "dev-master"
    },
    "repositories" : [{
        "type" : "vcs",
        "url" : "https://github.com/Company/DemoBundle.git"
    }],
    [...]

Do:

curl -sS https://getcomposer.org/installer | php
php composer.phar update company/demobundle

应用程序/应用程序内核:

new Company\DemoBundle\CompanyDemoBundle(),

在...上下功夫

  • 您可以在以下位置克隆您的 DemoBundlesrc/Company文件夹,然后手动安装
  • 您可以使用符号链接

结论

您可以在第一个项目中开发和测试您的捆绑包,并在第二个项目中将其与 github 和作曲家一起使用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Symfony2 - 创建自己的供应商包 - 项目和 git 策略 的相关文章

  • mongodb对话系统

    我正在实施一个verymongodb 上的简单对话系统 这个想法应该是 当我打开一个 convo 时 它应该显示发送和接收的消息 到目前为止一切正常 并且应该非常容易 通过使用像这样的伪代码这样的简单查询 from my id AND to
  • 如何从 Laravel 5 中的 Public/Images 文件夹中删除图像(URL 数据)

    如何从 laravel 5 中的 public images 文件夹中删除图像文件 我从这个网站找到了一些例子 但我知道他们只是在他们的文件中使用文件名record table 但我正在使用类似的东西URL e g localhost pr
  • 如何防止自动工具自动重新生成配置脚本?

    有时由于SCM没有严格记住文件的时间戳 生成的Makefile会认为需要重新运行 autoreconf i 或相当于从Makefile am重新生成Makefile in 从configure ac重新生成配置等 我该如何防止这种情况 我想
  • Laravel 5 与 SAML 2 和现有 IDP 集成

    我使用 Laravel 5 我正在尝试将 SAML 2 0 与其集成 我找到了这个包 https github com aacotroneo laravel saml2 https github com aacotroneo laravel
  • 将 SQL 中的数据存储在数组中

    我正在尝试将 sql 数据库中的数据存储到数组中 目前我有这个 query mysql query SELECT FROM InspEmail WHERE Company LIKE company while row mysql fetch
  • 配置 .htaccess 以在 PHP 框架 (Silex) 上工作

    我的 Apache2 本地主机 linux 上有一个工作路径 http localhost lab silex web index php hello name 我想成为 http localhost lab silex hello nam
  • 如何将 ctype_alpha 与 UTF-8 结合使用

    如何将 ctype alpha 与 UTF 8 一起使用 我有这个代码 if empty POST false if isset POST first name empty POST first name if ctype alpha PO
  • 获得干净的 git 沙箱的最有效方法是什么?

    对于我的持续集成构建 我想确保我的 git 沙箱中没有存放任何杂散文件 并且没有任何文件被无意中更改 我知道关于git reset hard HEAD 这解决了部分问题 但我想我想做的是删除所有未跟踪和忽略的文件 我可以用蛮力的方式做到这一
  • 如何在javascript中使用自动递增id?

  • 如何在 git merge 提交中列出冲突的文件(父级都有更改的文件)?

    qgit 有一个很好的选择 可以在合并提交中查看 有趣 的文件 其中有趣的文件被定义为在两个父文件中都有更改的文件 查看此类文件的相应命令行是什么 git show name status SHA1 of merge 将向您显示提交消息和在
  • SimpleSAMLPHP 重定向循环

    我们正在尝试使用自定义 mysql 数据库设置 sso 但它在以下两个请求之间进入无限循环 POST http 192 168 0 15 simplesaml module php core loginuserpass php 设置Cook
  • 使用 PDO 在 SQLite 中检索单个(且唯一)行的最简单方法

    我有这个 PDO stmt db gt prepare SELECT FROM channels WHERE id id stmt gt bindValue id id SQLITE3 INTEGER result stmt gt exec
  • 需要 mysqli_fetch_all 的替代方案

    我有一个 php mysqli 代码 可以找到一个我的本地服务器 但是在我的服务器上使用它时 我得到了一个 Fatal error Call to undefined function mysqli fetch all in home3 t
  • 登录后所有页面都应该是https吗?

    这有点难以解释 但我会尽力 有一个网站 每个页面上都有登录表单 其中包含用户名 密码字段 这些页面未使用 SSL 用户填写用户名 密码并提交表单后 表单将被发送到 https 的身份验证页面 对于这种情况我有几个疑问 向 https 页面提
  • Yii2 DropDownList Onchange 更改自动完成小部件“源”属性?

    我已经尝试过这个 yii2 依赖的自动完成小部件 https stackoverflow com questions 27025791 yii2 dependent autocomplete widget 但我不知道为什么它不起作用 这是我
  • 使用 DOM 获取 div 的内容(包括子标签)

    我正在使用 DOM 来获取 div 标签的内容 但内部 html 部分未显示 功能是 dom new DOMDocument libxml use internal errors true dom gt loadHTMLFile url l
  • 翻译即时消息

    如果表单成功 我正在尝试翻译我发送的即时消息 正常的请求是这样的 request gt getSession gt getFlashBag gt add notice Your E Mail has been sent 所以我尝试使用以下变
  • 在 MySQL 中搜索多个单词

    我使用 HTML 表单来允许用户查找数据库表中的条目
  • 转换MAC地址格式

    我刚刚编写了一个小脚本 从交换机中提取数百个 MAC 地址进行比较 但它们的格式为 0025 9073 3014 而不是标准的 00 25 90 73 30 14 我对如何转换它感到困惑 我能想到的最好的办法就是在 处将它们分解成碎片 然后
  • Laravel 5 注销特定用户

    在我的 laravel 5 应用程序中 有一个功能允许具有管理员角色的用户重置非管理员的任何人的密码 但这不会强制该人注销并再次登录 更改密码后如何强制用户注销 我没有对用于验证用户身份或任何内容的中间件进行任何更改 我不知道它是否有效 但

随机推荐

  • 视差视图滚动(类似雅虎天气)

    严格来说 这不是一个编程问题 而是更多的 如何完成这个 问题 我很好奇 并且正在开发一个可能需要此功能的应用程序 如何实现左右视差滚动 要准确了解我的意思 请查看雅虎天气应用程序 它是免费的 不用担心 他们是只使用一个视图控制器还是为其中显
  • 如何在CSS中制作渐变边框

    我正在尝试将渐变应用于边框 我认为这就像这样做一样简单 border color moz linear gradient top 555555 111111 但这是行不通的 有谁知道边框渐变的正确方法是什么 The border image
  • 数组“包含”方法在 Google Apps 脚本中失败

    我试图在 Google Apps 脚本中对数组使用 includes 方法 但失败并显示 无法找到对象 1 4 3 7 中包含的函数 第 4 行 文件 test array 以下是代码 function test array var arr
  • Soundpool 还是媒体播放器?

    我正在为 Android 开发一款纸牌游戏 我希望每次投掷纸牌时都能播放投掷声音 这是同一个文件 我还会播放其他声音 例如背景音乐和某些点击声 您建议使用什么 声音池或创建 MediaPlayback 并播放它 每一个的优点 缺点是什么 我
  • 内联静态常量与静态常量变量

    我无法弄清楚哪种解决方案更好 因为我不清楚其中的区别 我想要一个包含一些可以在整个程序中自由使用的变量的文件 我的第一次尝试如下 头文件 Hosts h pragma once include
  • 从 Tkinter 框架调用函数到另一个框架

    我有一个页面 将在其中显示一些客户详细信息 因此 我创建了一个名为 客户详细信息 的页面 其中包含我需要的所有标签 并将这些标签的文本设置为变量 可惜它不起作用 标签创建于 init 方法 所以我无法 更新 它们 因为 init 仅在开始时
  • Android:如何检测assets文件夹中的目录?

    我正在检索这样的文件 String files assetFiles list EngagiaDroid 我们如何知道它是一个文件还是一个目录呢 我想循环访问资产文件夹中的目录 然后复制其所有内容 我认为更通用的解决方案 如果您有子文件夹等
  • 使用 spring-boot-admin-server 时创建名为“conversionServicePostProcessor”的 bean 时出错

    我试图为我的应用程序启用 Spring boot 管理服务器 默认设置工作得很好 但是当我尝试启用安全性时 出现以下错误 应用程序无法启动 描述 bean conversionServicePostProcessor 在类路径中定义 资源
  • 如何否定进程的返回值?

    我正在寻找一个简单但跨平台的negate 否定进程返回值的进程 它应该将 0 映射到某个值 0 并将任何值 0 映射到 0 即以下命令应返回 yes nonexistingpath 不存在 ls nonexistingpath negate
  • Python:通过变量名引用对象属性? [复制]

    这个问题在这里已经有答案了 我正在用 Python 编写棋盘游戏 大富翁 大富翁 拥有三种类型的土地供玩家购买 房产 如木板路 铁路和公用事业 房产有 6 种条件 0 4 栋房屋或酒店 的可变购买价格和租金 铁路和公用事业有固定的价格和租金
  • Alamofire 接受和内容类型 JSON

    我正在尝试在 Swift 中使用 Alamofire 发出 GET 请求 我需要设置以下标题 Content Type application json Accept application json 我可以绕过它并直接指定请求的标头 但我
  • 将数组打印到文件

    我想将数组打印到文件中 我希望该文件看起来与这样的代码完全相同 print r abc 假设 abc 是一个数组 是否有任何单行解决方案可以解决此问题 而不是每种外观都常规解决方案 P S 我目前使用序列化 但我想让文件可读 因为序列化数组
  • Object.defineProperty 获取/设置闭包

    好的 我尝试这样创建新对象 var src a a b b c c var out for var prop in src Object defineProperty out prop get function return src pro
  • 尽管网站是 HTTPS,但 WebView 显示 ERR_CLEARTEXT_NOT_PERMITTED [重复]

    这个问题在这里已经有答案了 我开始在 Android 上开发一个应用程序 所以我没有太多东西 到目前为止我所拥有的只是一个 WebView 我在 Android Studio 中创建了该项目 并将我的项目设置为 Android Instan
  • 在 php 服务器端使用meteor.js

    我开发了一个应用程序 我想使用meteor js进行实时更新 我想增强但不改变我的程序 例如当用户添加评论时使其实时更新 问题是meteor js使用node js 因此javascript作为服务器端代码 我使用 LAMP 堆栈 是否可以
  • 阻止执行上传的php文件?

    在我的项目中 允许用户上传任何类型的文件 我需要确保安全 防止执行可由 php 解析的上传文件 php html 等 有没有办法告诉apache不要在web uploads中解析任何带有php的文件并简单地将它们显示为纯文本 还有什么其他选
  • Visual Studio 2013 编辑并继续不起作用

    使用 VS2013 Pro 我在调试 MFC 程序时无法使用 编辑并继续 我新建了一个MFC项目来测试 操作系统是 Windows 7 64 位 我正在运行 Visual Studio 2013 12 0 30110 00 Update1
  • 获取当前的 jupyter-lab 笔记本名称 [适用于 Jupyter-lab 版本 2.1 和 3.0.1 以及笔记本版本 >6.0.3)

    Problem Hi all 正如我的标题所示 我想访问笔记本名称 在Jupyter实验室 作为变量 所以我可以在笔记本本身中重用它 例如 命名笔记本中生成的一些图形文件 我看到几年前就有人提出过类似的问题 看这里 然而我没有找到满意的答案
  • Rails 如何决定使用 PUT 或 POST 方法渲染表单?

    Rails 生成一个表单部分 可以在由 get 操作呈现的页面和由新操作呈现的页面上使用 如果是前者 则表单的方法设置为 PUT 如果是后者 则表单的操作设置为 POST Rails 如何决定使用哪种方法 如果传递给表单的对象是persis
  • Symfony2 - 创建自己的供应商包 - 项目和 git 策略

    我们正在考虑创建自己的common用于实体映射和服务的捆绑包 可在几个单独的应用程序中使用 捆绑包应该易于修改 运行 包含和测试 我知道关于构建捆绑包的最佳实践 但我不知道什么git开发时使用的策略 我们是否应该创建common捆绑为整个项