小编Pet*_*ter的帖子

@ {u}在Git中的含义是什么?

在第69页的"Git:每个人的版本控制.初学者指南"一书中,有一个建议:"作为替代git pull,我们也可以使用git fetch后跟git merge @{u}".

@{u}这里的意思是什么?

在Google中搜索git merge @{u}提供了此页面的链接http://mislav.uniqpath.com/2013/02/merge-vs-rebase/其中@{u}也可以找到.

git

33
推荐指数
1
解决办法
3330
查看次数

设置计划任务以在用户未登录时运行

我一直在使用Powershell Scheduled Task Cmdlet在我们的服务器上创建计划任务.

如何使用此API选择"运行用户是否登录"?

我创建action,trigger,principalsettings对象,并将它们传递到Register-ScheduledTask,如下图所示:

$action = New-ScheduledTaskAction -Execute foo.exe -Argument "bar baz"
$trigger = New-ScheduledTaskTrigger -Once -At $startTime -RepetitionInterval (New-TimeSpan -Minutes 1) -RepetitionDuration ([Timespan]::MaxValue)
$principal = New-ScheduledTaskPrincipal -UserId "$($env:USERDOMAIN)\$($env:USERNAME)" -LogonType ServiceAccount
$settings = New-ScheduledTaskSettingsSet -MultipleInstances Parallel

Register-ScheduledTask -TaskName $taskName -TaskPath "\my\path" -Action $action -Trigger $trigger -Settings $settings -Principal $principal
Run Code Online (Sandbox Code Playgroud)

当我创建这样的计划任务时,它默认为"仅在用户登录时运行".

这个问题显示了如何使用COM对象,这个使用schtasks.exe,但我如何使用*-ScheduledTask*cmdlet?

powershell scheduled-tasks powershell-3.0 windows-server-2012

26
推荐指数
4
解决办法
4万
查看次数

Perl参数列表中的美元,符号和分号字符是什么意思?

在我的工作中,我在代码库中遇到了许多Perl脚本.其中一些包含具有以下语法奇怪性的子例程:

sub sum($$$) {
    my($a,$b,$m)=@_;
    for my $i (0..$m) {
        $$a[$i] += $$b[$i] if $$b[$i] > 0;
    }
}

sub gNode($$;$$) {
    my($n,$l,$s,$d) = @_;
    return (
            "Node name='$n' label='$l' descr='$d'" ,
            $s ? ("Shape type='$s' /") : (),
            '/Node'
        );
}

sub gOut($$@) {
    my $h = shift;
    my $i = shift;
    if ($i > 0) {
        print $h (('')x$i, map '<'.$_.'>', @_);
    } else {
        print $h map '<'.$_.'>', @_;
    }
}
Run Code Online (Sandbox Code Playgroud)

暂且不谈这些子程序的意图(我不完全确定自己......),"参数列表"位置的字符序列是什么意思?即 的$$$,$$;$$并且 …

parameters perl

9
推荐指数
1
解决办法
4467
查看次数

在尾递归函数中使用管道时出现堆栈溢出异常

我有一个天真的游戏循环实现

let gameLoop gamestate =     
    let rec innerLoop prev gamestate =
        let now = getTicks()
        let delta = now - prev
        gamestate 
        |> readInput delta
        |> update delta
        |> render delta
        |> innerLoop delta             

    innerLoop 0L gamestate 
Run Code Online (Sandbox Code Playgroud)

此实现抛出stackoverflowexception.在我看来,这应该是尾递归.我可以像这样做一个工作

let gameLoop gamestate =     
    let rec innerLoop prev gamestate =
        let now = getTicks()
        let delta = now - prev
        let newState = gamestate 
            |> readInput delta
            |> update delta
            |> render delta

        innerLoop now newState

    innerLoop 0L gamestate  
Run Code Online (Sandbox Code Playgroud)

所以我的问题是为什么第一个代码示例抛出stackoverflow异常.

f# tail-recursion

9
推荐指数
2
解决办法
190
查看次数

查询 Azure Log Analytics 中的多个表

我正在查看 Web 应用程序的 Azure 日志分析,并且我有多个包含数据的开箱即用“表”:traces, requests,exceptions等。

我可以构造一个对多个表中的数据运行的查询吗?我不想加入来自不同来源的数据,我只想连接/交错它,所以我可以寻找例如“所有痕迹包含字符串‘SQL’的

从理论上讲,类似于:

traces, exceptions
| where * contains "SQL"
| order by timestamp desc
| limit 100
Run Code Online (Sandbox Code Playgroud)

这可能吗?

azure azure-log-analytics kql azure-data-explorer

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

在AngularJS中注入基本类型

我正在学习AngularJS的方法.我基本上已经掌握了Angular处理依赖注入的方式,但是我找不到答案的差距.

假设我有一个服务,它根据用户的查询从Web检索数据; 它可能看起来像这样:

var webBasedServiceModule = angular.module('WebBasedService', []);

webBasedServiceModule
    .factory('webBasedService', function ($http) {
        var rootUrl = "http://example.com/myApi?query=";
        return {
            getData: function(query) {
                return $http.get(rootUrl + query)
                    .then(function(httpCallbackArg) {
                        return doSomething(httpCallbackArg);
                    });
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

我正在注入$ http服务,所以我可以模拟它进行测试.但是,我已经在课堂上硬编码了我的Web服务的根URL.理想情况下,我想将此URL与服务类分离,并将其作为依赖项注入.但是,我没有看到将字符串或其他基元注入角度工厂函数的方法.理想情况下,我希望代码看起来像这样:

var webBasedServiceModule = angular.module('WebBasedService', []);

webBasedServiceModule
    .factory('webBasedService', function ($http, rootUrl) {
        return {
            getData: function(query) {
                return $http.get(rootUrl + query)
                    .then(function(httpCallbackArg) {
                        return doSomething(httpCallbackArg);
                    });
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

我能看到的一个解决方案就是创建一个UrlProviderService并将该服务注入WebBasedService模块,然后调用urlProvider.Url或类似.这似乎有点臭:为一个配置数据创建一个全新的服务似乎有些过分.我甚至可以想像,我可能会创建一个服务,这一个字符串,像这样:

var urlServiceModule = angular.module('UrlService', []);

urlServiceModule
    .factory('rootUrl', …
Run Code Online (Sandbox Code Playgroud)

javascript dependency-injection angularjs angularjs-service

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

奇怪错误XML解析:第1行,第2038字符,非法xml字符

我有这个问题,

DECLARE @Result XML;
SELECT @Result = (  SELECT  PD.* 
                FROM    [ProductDetailedDescriptions] PD
                        LEFT JOIN [Products] P ON (PD.ProductID= P.ID)
                WHERE   PD.ProductID = 23
                        AND P.RetailerID = 1
                        AND PD.LanguageID = 1
                ORDER BY [ORDER]
                FOR XML AUTO, ELEMENTS, ROOT('root')
            )
Run Code Online (Sandbox Code Playgroud)

这引发了XML parsing: line 1, character 2038, illegal xml character.当我选择时,

SELECT  PD.* 
FROM    [ProductDetailedDescriptions] PD
        LEFT JOIN [Products] P ON (PD.ProductID= P.ID)
WHERE   PD.ProductID = 23
        AND P.RetailerID = 1
        AND PD.LanguageID = 1
ORDER BY [ORDER]
FOR …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2008-r2

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

如何仅在列表中的项目的子范围上分配属性?

我想使用创建自定义对象列表AutoFixture.我希望第一个N对象将属性设置为一个值,剩余部分将其设置为另一个值(或者简单地由Fixture默认策略设置).

我知道我可以使用Fixture.CreateMany<T>.With,但这会将一个函数应用于列表的所有成员.

NBuilder那里提供了名称TheFirstTheNext(以及其他)提供此功能的方法.他们使用的一个例子:

给出一个类Foo:

class Foo
{
    public string Bar {get; set;}
    public int Blub {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

一个人可以Foo像这样实例化一堆s:

class TestSomethingUsingFoo
{
    /// ... set up etc.

    [Test]
    public static void TestTheFooUser()
    {
        var foosToSupplyToTheSUT = Builder<Foo>.CreateListOfSize(10)
            .TheFirst(5)
                .With(foo => foo.Bar = "Baz")
            .TheNext(3)
                .With(foo => foo.Bar = "Qux")
            .All()
                .With(foo => foo.Blub = 11)
            .Build();

        /// ... perform the …
Run Code Online (Sandbox Code Playgroud)

.net c# unit-testing mocking autofixture

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

无法在 Azure Pipelines 中授权变量组

我正在 Azure DevOps 中构建多阶段 Azure Pipeline 来构建和发布我的产品。

我想在这个管道中使用变量组,以便我可以为不同的部署环境替换不同的配置值。

我无法授权管道使用我的变量组。当我手动运行构建时,我在摘要页面上看到一条消息,告诉我变量组未被授权: 错误信息

Azure的DevOps的文件说,这是可以预料的:

当您对 YAML 文件进行更改并添加其他资源时(假设这些资源未经授权可在上述所有管道中使用),则构建将失败并显示类似于以下内容的资源授权错误:Could not find a {RESOURCE } 姓名为{NAME}。{RESOURCE} 不存在或未被授权使用。

在这种情况下,在“摘要”页面上,您将看到一个选项来授权失败构建上的资源。如果您是资源的用户角色的成员,则可以选择此选项。一旦资源获得授权,您就可以开始新的构建。

我是变量组的用户角色的成员,我看到了消息,但我没有授权选项。还有什么我需要做的吗?或者还有另一种方法可以授权特定管道使用变量组吗?

azure azure-devops azure-pipelines

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

在 Visual Studio Code 中,有没有办法将设置和键绑定范围限定为语言模式?

VS Code中,我知道您可以创建包含全局用户键绑定和设置的文件,并且可以拥有用于键绑定和设置的工作区特定文件,但是是否可以定义特定于语言模式的设置或键绑定?

例如,我希望Alt+/表示FSI: Send Line当我处于 F# 模式时,而不是当我处于 Markdown 模式或 JS 模式时。

当我处于 Elm 模式时,我希望制表符为 2 个空格,但在 C# 模式下为 4 个空格。

我知道您可以使用when如下子句定义键绑定:

{
    "key": "alt+/",
    "command": "fsi.SendLine",
    "when": "resourceLangId == fsharp"
}
Run Code Online (Sandbox Code Playgroud)

这是实现我所追求的目标的唯一方法吗?

似乎能够在自己的文件中的某处定义模式 X 的设置/键绑定是有意义的。我不喜欢将语言模式行为分散在像这样的大型全局文件中。

keyboard-shortcuts visual-studio-code

5
推荐指数
2
解决办法
1574
查看次数