问题是:在将其合并到标记后,如何实现正确的版本(显示为git describe)developmastermaster?
我使用常见的git分支 - master用于生产.比方说,git describe节目1.5上master,,并与合并后的develop, master节目1.5-234-g1e894af.
所以我创建了一个新的带注释的标签,git tag -a 1.6因此git describe master现在显示1.6.
但是:git describe develop仍然显示1.5-something,这对我来说很奇怪 - 它有同样的提交master- 为什么Git认为它仍然属于1.5版本?
没有更好的东西进入我的大脑,所以我只是将master合并到develop中,然后开发显示1.6-2-...可接受的版本但产生1次无用的合并提交,并警告我"通过递归合并",我认为这对我来说没有意义做,但如何实现正确的版本呢?
我希望我可以有一个isSQLCountLessThan()函数或其他东西.
$browser = new sfTestFunctional(new sfBrowser());
$browser
->get('/some/page')
->with('response')->begin()
->isStatusCode(200)
// ...
->isSQLCountLessThan(20) // imagine how cool :)
->end();
Run Code Online (Sandbox Code Playgroud)
有办法有这样的吗?
使用"build /"文件夹可以放置和"构建"所有源代码有什么好处?
也许这是一个愚蠢的问题,但我正在尝试理解与PHP的持续集成.用于phing的build.xml的任何示例都使用这样的构建/文件夹,但是对于PHP来说有一点意义,其中签出的项目不需要编译,只需要基本配置.复制所有到构建/只会复杂的事情,因为你已经翻番文件和文件夹+1到Web根路径(如果你想有web用户界面来运行Selenium测试)
特别是我需要phing两种情况:
1)让新用户设置他的第一次安装(或更新旧),正确的工作副本
2)运行unit/func-tests,phpcc,phpcs,phpdoc等(通常在CI服务器上) )
我应该为第二项任务"建立/"吗?PHP的最佳实践是什么?
$ argv数组包含几乎相同的值,我找不到谁拥有确切的值.我的意思是所有逃避/取消特殊符号都会消失.因此,我无法将相同的参数传递给另一个脚本(或者只是记录被调用的精确命令),而无需重新处理,这是我想避免使用的无用代码.
这是一个测试php文件:
<?php
var_dump($_SERVER["argv"]);
Run Code Online (Sandbox Code Playgroud)
示范:
[denis@mypc ~]$ php test.php key="val space" key2=val\ space
array(3) {
[0]=>
string(8) "test.php"
[1]=>
string(13) "key=val space"
[2]=>
string(14) "key2=val space"
}
Run Code Online (Sandbox Code Playgroud)
所以,如果我然后使用join("",$ argv),我会得到:
test.php key=val space key2=val space
Run Code Online (Sandbox Code Playgroud)
哪个是不一样的呼叫(包含4个参数,而不是2个).
再说一次:理想情况下,我需要获得完全相同的命令.
php ×2
argv ×1
git ×1
git-branch ×1
git-describe ×1
lime ×1
master ×1
phing ×1
shell ×1
symfony1 ×1