这是一个最佳实践问题,我希望答案是"它取决于".我只是希望了解更多真实世界的场景和工作流程.
首先,我在谈论同一个项目的不同变化,所以请不要再使用subrepo.
假设您在hg存储库中拥有代码库.您开始处理复杂的新功能A,然后由您的可信测试人员报告复杂的错误B(您有测试人员,对吧?).
如果(修复)B取决于A,那将是微不足道的.你可以ci A然后ci B.
我的问题是当他们独立时(或至少现在看来)该怎么做.
我可以想到以下几种方式:
1和2 由@Steve Losh 的优秀博客覆盖,该博客与一个稍微相关的问题相关联.
与其他选择相比,1的一个巨大优势是,当您从处理一件事物到另一件事物时,它不需要任何重建,因为文件是物理上分离且独立的.所以它真的是唯一的选择,例如,A和/或B接触定义三态布尔的头文件,并被数千个C文件包含(不要告诉我你没有看到这样的遗留代码基础).
3可能是最简单的(在设置和开销方面),如果B是一个小的和/或紧急修复,你可以翻转A和B的顺序.但是,如果A和B接触相同的文件,它会变得棘手.如果A和B的变化在同一个文件中是正交的,那么很容易修复无法应用的补丁,但从概念上讲它仍然有点风险.
4可以让你头晕,但它是最强大,最灵活和可扩展的方式.我默认hg qinit使用,-c因为我想标记正在进行中的补丁并推送/拉取它们,但它确实需要一个概念上的飞跃才能意识到你也可以在MQ repo中进行分支.以下是步骤(mq = hg --mq):
hg qnew bugA; 为A做出改变;hg qrefmq branch branchA; hg qcihg qpop; mq up -rtip^hg qnew bugB; 为B做出改变;hg qrefmq branch branchB; hg qcihg qpop; mq up branchA; hg qpush采取这么多步骤似乎很疯狂,每当你需要切换工作时,你必须这样做hg qci; hg qpop; mq up <branch>; …
过去,版本3.0的rails指南上的ruby位于http://edgeguides.rubyonrails.org/,版本2.3的指南位于http://guides.rubyonrails.org.现在版本3已经发布,其指南已移至主URL.
有没有办法访问rails 2.3的指南?
我有一个IFilterGraph实例 - 我自己的带有视频过滤器的图形(源代码,transofrm和渲染器).如何获取运行图的当前fps(视频帧速率)?
关心多米尼克
我正在使用respond_with,所有内容都正确连接,以正确获取数据.我想自定义的返回json,xml以及foobar格式在干燥的方式,但我无法弄清楚如何使用有限的做:only和:include.当数据很简单时,这些都很棒,但是对于复杂的发现,它们不符合我的要求.
可以说我有一个帖子哪个has_many图像
def show
@post = Post.find params[:id]
respond_with(@post)
end
Run Code Online (Sandbox Code Playgroud)
我希望将图像包含在响应中,以便我可以这样做:
def show
@post = Post.find params[:id]
respond_with(@post, :include => :images)
end
Run Code Online (Sandbox Code Playgroud)
但我真的不想发送整个图像对象,只是网址.除此之外,我真的希望能够做到这样的事情(伪代码):
def show
@post = Post.find params[:id]
respond_with(@post, :include => { :foo => @posts.each.really_cool_method } )
end
def index
@post = Post.find params[:id]
respond_with(@post, :include => { :foo => @post.really_cool_method } )
end
Run Code Online (Sandbox Code Playgroud)
......但是一切都干了.在较旧的rails项目中,我使用XML构建器来自定义输出,但是在json,xml,html中复制它看起来不对.我不得不想象铁路专家在Rails 3中放了一些东西,我没有意识到这种行为.想法?
我正在努力学习如何有效地使用Git,我想知道我应该如何(良好做法/不良做法?)解决以下案例:
假设我在master中有以下提交链:
然后我意识到在最后两次提交中完成的操作是完全错误的,我需要再次从Commit 1开始.问题:
我是Perl的新手,我面临以下问题,不知道为什么跟随不起作用.
我的Perl模块包含:
package PACK2;
use Exporter;
@ISA = ('Exporter');
@EXPORT_OK=('whom');
sub why(){
print "why\n";
}
sub whom(){
print "whom\n";
}
1;
Run Code Online (Sandbox Code Playgroud)
我的Perl文件包含:
#!/usr/bin/perl -w
use pack;
use pack2 ('whom');
PACK::who();
&whom();
Run Code Online (Sandbox Code Playgroud)
我运行这个程序,找不到whom:
perl use_pack_pm.pl
who
Undefined subroutine &main::whom called at use_pack_pm.pl line 7.
Run Code Online (Sandbox Code Playgroud) 我有一个类库我想用Microsofts单元测试框架进行单元测试.我想测试的一些类是使用应用程序设置配置的.这些设置在Settings.settings具有应用程序范围和合适的默认值的文件中定义.当应用程序使用库时,可以在App.Config文件中覆盖这些设置.如果不是,则使用默认值.这正是我想要它的方式.
在我的一些测试用例中,我想测试设置值的特殊组合,但我不知道如何从单元测试代码更改被测试类所看到的值.这些设置将始终从代码生成的类的属性加载其默认值.
在我的库类中,我访问如下设置:
var mySetting1 = Settings.Default.MySetting1;
var mySetting2 = Settings.Default.MySetting2;
Run Code Online (Sandbox Code Playgroud)
在被测试的类访问设置之前,如何在单元测试中修改这些设置?单元测试可以访问内部设置类并不能解决问题,因为设置具有应用程序范围并且是设置类的只读属性.
.net configuration unit-testing settings.settings visual-studio
我的音乐用这个名字保存在桌面上
doli mix - arcax(Mus.Ge).mp3
Run Code Online (Sandbox Code Playgroud)
如何编写代码来播放HTML中的音乐?
屏幕显示四个按钮.按下按钮时,媒体播放器播放声音.我遇到的问题是同时为所有按钮实现setClickable.
单击一个按钮后,我希望所有按钮都不可点击,直到媒体播放器播放完与按钮单击相关的声音.然后我想将所有按钮设置回可点击状态.
代码运行正常,直到我启用setClickable代码 - 在我的代码示例中禁用了buttonOne的代码.测试电话锁定并告诉我应用程序已停止并再次尝试.
不幸的是,如果没有setClickable,用户可以在完成第一个选定声音播放之前按任意按钮并听到任何声音.
感谢您的时间和帮助.
import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.widget.ImageButton;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
public class hipsterdoofus extends Activity
{
private int asoundfilenumber;//integer id of sound file to be played
public ImageButton buttonOne;
public ImageButton buttonTwo;
public ImageButton buttonThree;
public ImageButton buttonFour;
public void myClickHandler(View v) {
switch (v.getId())
{
case R.id.buttonOne:
asoundfilenumber=0x7f040000;
break;
case R.id.buttonTwo:
asoundfilenumber=0x7f040001;
break;
case R.id.buttonThree:
asoundfilenumber=0x7f040002;
break;
case R.id.buttonFour:
asoundfilenumber=0x7f040003;
break;
}//closes switch test
freezeButtonsAndPlaySoundThenUnfreezeButtons();
}//closes …Run Code Online (Sandbox Code Playgroud) 我是一个完全熟悉Windows服务的人.我有一个基本的骨架服务,我目前正在这样做:
protected override void OnStart(string[] args)
{
base.OnStart(args);
Process.Start(@"someProcess.exe");
}
Run Code Online (Sandbox Code Playgroud)
只是为了在程序开始时启动exe.
但是,当进程从exe退出开始时,我想让服务停止.我很确定我需要做一些线程(我也是初学者),但我不确定这是如何工作的总体轮廓,也不确定从内部停止进程的具体方法.你能帮助我解决这个问题的一般过程(即从OnStart开始一个线程,那么......?)?谢谢.