小编Pat*_*ick的帖子

如何让Composer从GitHub下载主分支中的最新提交?

我试图让Composer下载Behat/MinkSelenium2Driver软件包的最新提交.那个特殊的仓库只有一个主分支.我已经尝试了我能想到的每一种方法,包括删除文件并将其拉回来,以使其工作,但事实并非如此.

我如何获取最新提交的文件或至少来自下面提交的提交文件?

具体来说,我想得到这个提交:https: //github.com/Behat/MinkSelenium2Driver/commit/2e73d8134ec8526b6e742f05c146fec2d5e1b8d6

谢谢,帕特里克

php git github composer-php

41
推荐指数
2
解决办法
3万
查看次数

使用git,如何删除远程分支的本地副本?或者至少拉动而不合并?

另一位开发人员删除并重建了一个名为"development"的远程分支,我已经签出了一份副本.他做了这个删除和重建,以消除它的一些残余.哪个好.

但是,当我做"git pull origin development"时,它会不断出现合并冲突.但我不想要我的副本.我只想要原产地.

那么如何删除我的本地副本并将其拉回来?或者至少在没有将我的本地信息合并到它的情况下拉?

git branch branching-and-merging git-branch

10
推荐指数
2
解决办法
5760
查看次数

从自定义上下文代码向Behat输出添加信息

我正在尝试确定如何向Behat的输出(漂亮,html,junit等)添加其他信息,以便我可以为测试目的提供更多上下文信息.

具体来说,我有一些在某些测试中生成的唯一数据.我一直在呼叫控制台.但这绝不会在报告中生成的任何文件中结束.我希望我输出到控制台的这些信息最终会出现在报告中.我如何从我的FeatureContext.php自定义步骤中做到这一点?

谢谢,帕特里克

php symfony behat output

10
推荐指数
1
解决办法
923
查看次数

如何在字符串列表中使用LIKE运算符进行比较?

我有一个查询,我需要在近2000个字符串上运行,能够像"IN"运算符一样使用LIKE比较操作来执行列表非常有用.

例如,我想检查pet_name是否像这些中的任何一个(但不完全相同):barfy,max,whiskers,champ,big-D,Big D,Sally

使用它不会区分大小写,它也可以有一个下划线而不是破折号.还是一个空间.编写一大系OR运算符将是一个巨大的痛苦.我在MySQL 5.1上运行它.

在我的特定情况下,我正在寻找文件名,其中差异通常是破折号或下划线,相反的情况.

mysql sql

8
推荐指数
2
解决办法
9052
查看次数

MySQL,哪种更有效的longtext,text或blob?提高插入效率

我正在将来自多个数据库的大量数据迁移到一个数据库中.作为中间步骤,我将数据复制到每个数据类型和源数据库的文件中,然后将其复制到新数据库中的大表中.

新表中的结构很简单,称为migrate_data.它由一个id(主键),一个type_id(在数据类型集中递增),data(包含一个包含我正在迁移的数据的序列化PHP对象的字段),source_db(显然是指源数据库),data_type (确定我们正在查看的数据类型).

除了数据字段,我已经创建了所有键的键和键组合.目前,我将数据字段设置为longtext列.用户插入平均每个约需4.8秒.我可以使用桌子上的DELAY_KEY_WRITE = 1将其减少到4.3秒.

我想知道的是,是否有办法进一步提高性能.可能通过更改为不同的数据列类型.这就是我询问longtext vs text vs blob的原因.这种插入物中哪些更有效?

在你回答之前,让我再给你一些信息.我将所有数据发送到一个insert函数,该函数接受对象,通过序列化运行它,然后运行数据插入.它也是使用Drupal 6(及其db_query函数)完成的.

任何效率提升都会很棒.

当前表结构:

CREATE TABLE IF NOT EXISTS `migrate_data` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `type_id` int(10) unsigned NOT NULL DEFAULT '0',
  `data` longtext NOT NULL,
  `source_db` varchar(128) NOT NULL DEFAULT '',
  `data_type` varchar(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`),
  KEY `migrated_data_source` (`source_db`),
  KEY `migrated_data_type_id` (`type_id`),
  KEY `migrated_data_data_type` (`data_type`),
  KEY `migrated_data_id__source` (`id`,`source_db`),
  KEY `migrated_data_type_id__source` (`type_id`,`source_db`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 DELAY_KEY_WRITE=1;
Run Code Online (Sandbox Code Playgroud)

php mysql sql mysqli drupal

6
推荐指数
1
解决办法
1万
查看次数

Wordpress插件处于活动状态,但未在管理工具中检查

好的,所以我有一个大问题.或至少表明一个大问题.你看我去创建了一个最近推出的网站的开发版.我将所有文件复制到一个新目录,创建了我的apache条目,为它创建了一个全新的数据库,并复制了该数据库.

然后我确保将www.mysite.com条目更改为数据库中的dev.mysite.com.所有这一切看起来都很好,我重新启动了apache.在与开发网站遇到一些问题后,我决定退出当晚.我去检查生产现场,它突然停了下来.所以我在Apache中删除了default-ssl中的SSL条目,然后重新启动了Apache,这很好.

然后我进入管理员并注意到在插件页面上它加粗了活动插件.它给出了准确的计数.插件正在运行.但是每个旁边的复选框都没有显示.

所以我想也许我在事故中搞砸了数据库.所以我只是吹走了数据库并在我开始之前(大约30分钟前)从我做的备份中快速重新导入了它.它看起来一样.该网站正在运行,但我遇到了管理员问题.

有人有建议吗?这让我有点吓坏了.在创建一个开发网站之前我从来没有遇到这样的问题,而且从来没有让Wordpress做过这样的疯狂事情.

我将补充说,这是运行最新版本的Wordpress和WooCommerce.看起来该网站正在运作.但这让我非常担心其他问题.

php database apache wordpress ssl

6
推荐指数
1
解决办法
252
查看次数

jQuery Validate插件 - 如何根据各种条件显示不同的错误消息

好的,我知道每个人的第一个想法是简单地创建另一个验证方法和消息.但这是交易.我们有一个表单,其中包含一个用作雇主姓名和公司名称的字段,具体取决于下拉列表中选择的内容.

我需要做的是当下拉列表显示他们拥有公司并且他们没有填写该字段然后它显示一条消息.如果他们不拥有公司并且它是空的,那么它会显示另一条消息.

我怎么做到这一点?这是使用最新版本的jQuery和Validate插件(http://jqueryvalidation.org/).

更新: 我在选择下面的选定答案后,向您呈现我最终得到的代码......

http://pastebin.com/iG3Z4BbJ

谢谢,享受!

代码详细信息:

/**
 * Reference: http://jqueryvalidation.org/rules
 */
$(document).ready(function() {
    var rules = {
        IncomeSource: 'required',
        NetIncome: {
            required: true,
            usDollar: true,
            minDollars: 1
        },
        //Begin - Fields that don't always show
        JobTitle: {
            //required: true,
            nameInput: true
        },
        Employer: {
            //required: true,
            nameInput: true
        },
        EmployerPhone: {
            //required: true,
            phoneUS: true
        },
        BenefitSource: {
            //required: true,
            nameInput: true
        },
        //SemiMonthlySpecifics: 'required', //Select one when Semi-Monthly or Monthly are selected
        //End - Fields …
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-validate

6
推荐指数
2
解决办法
7866
查看次数

通过PhantomJS运行Behat登录测试时,它只会在第一次运行时传递

我在Behat中创建了一个非常简单的登录测试来登录我们的内部应用程序.有两种登录类型(从同一屏幕和框中完成).有基础和先进的.唯一的区别是,在高级版中,登录的用户可以访问多个公司,并被要求选择公司进行处理.

我发现每当我通过PhantomJS而不是Selenium运行场景时,它们运行得更快(显然因为没有必须在无头浏览器模拟器中渲染).当我第一次启动PhantomJS时,它运行两种情况就好了.但是我再次运行它并且第一个场景(基本登录)失败了.

如果我重新启动PhantomJS,它会再次运行,直到第二次尝试.我很困惑.为什么我需要重新启动PhantomJS才能在第一次调用时再次通过两个测试.

如果我指定我只是希望它在后续运行中运行高级登录,那么它也会失败该登录.如果我指定基本登录(仍然阻止它运行两个方案),它也会失败.但是当我在同一个调用中运行两个场景时,第一个场景总是失败而第二个场景总是通过.

我甚至切换了顺序,以便基本运行第二而不是第一,第一种情况(在这种情况下是高级)失败,第二种情况通过.那么世界上究竟发生了什么?

作为一个额外的奖励,我继续前进并添加了一行"然后我跟随"退出"',突然两个场景再次通过.如果不是因为它在第二种情况下工作正常,那将是有意义的.如果它已经登录,它不应该失败吗?有没有办法确保在每个场景结束时清除PhantomJS的缓存?

Feature: Login
    Login to app using a basic user
    Login to app using a multi-company user

    @javascript
    Scenario: Basic Login
        Given I am on "/"
        And I wait a few seconds
        When I fill in "login" with "ijones"
        And I fill in "password" with "SomeP@ssword"
        And I press "LoginButton"
        And I wait a few seconds
        Then I should see "By clicking below"
        And I press "OK"
        Then I should see "Welcome"

    @javascript
    Scenario: Advanced …
Run Code Online (Sandbox Code Playgroud)

php bdd automated-tests phantomjs behat

5
推荐指数
1
解决办法
1591
查看次数

如何在存储库中停止使用Git LFS

我最近在主存储库中设置了Git LFS,到目前为止,它没有任何问题。最重要的是,我们仅将其设置为阻止单独构建回购上的膨胀效果(为了支持新流程而逐渐消失)。

此时的主要问题(以及其他问题)是,我们试图开始将构建从主存储库推送到Acquia存储库(这是Acquia部署所必需的)。Acquia不支持Git LFS,因此我没有时间与之抗争,也没有与可能影响这种变化的任何人争辩主机解决方案的优点(这是我们已经拥有并有一段时间了)。

我只想删除它,似乎只删除了一部分。似乎在线文档充其量也很少。

这是我所做的:

  1. git lfs untrack *
  2. 然后 git lfs uninstall
  3. 最后,我将.gitattributes文件还原到先前的状态

我把它推高了,在本地看来,它消除了很多对象跟踪(通过我进入.git/lfs并扎根文件夹结构的优点)。跑步git lfs ls-files根本不显示任何信息。

但是,当我将其拉到一个单独的克隆中时,当我尝试推送到Acquia时,它仍然显示有上千个文件仍在跟踪中,但由于Acquia不支持该文件而失败。迷人,我知道。

我怀疑完全删除它会删除该.git/lfs目录或至少其中的内容。如果没有别的,它应该消除克隆中的跟踪,从而拉下更改。它不是。

我认为我可能缺少将文件指针改回原来状态的步骤,但是我不确定我还能安全地做什么。我想保持它跟踪的文件。我的回购托管在Bitbucket云上。

git bitbucket acquia git-lfs

5
推荐指数
1
解决办法
420
查看次数

如何防止 VS Code 尝试通过热键保存命令保存所有未保存的文件并仅保存当前文件?

我倾向于在 VS Code 中故意打开多个未保存的注释和代码段。我不想拯救他们。这只是我工作时的一个地方,然后我希望它消失。

目前,当我去保存一个我想保留的新文件,而有几个我不想保留的其他文件时,它会遍历所有文件的列表,并尝试一次保存它们。我不想要这样。我只想将文件保存在当前视口中。

我使用的热键是 Command + S(这是 Mac OS X 上默认的“保存”热键)。请注意,在 VS Code 的菜单中,“全部保存”热键是 Option + Command + S。

有没有办法让它在保存当前文件时忽略其他未保存的文件?

file save visual-studio-code

5
推荐指数
1
解决办法
1487
查看次数