小编jac*_*cus的帖子

将git子模块移动到另一个目录后,它失败,并且子模块中出现错误'git status --porcelain'失败

最初我有以下(简化)回购结构:

MyRepo
   external1/MySub (git submodule)
   .gitsubmodules
Run Code Online (Sandbox Code Playgroud)

哪里

$ cat .gitsubmodules

  [submodule "external1/MySub"]
  path = external1/MySub
  url = user@repo:/remoterepo/externals/MySub.git
Run Code Online (Sandbox Code Playgroud)

然后我想将MySubmodule移动到同一个git存储库中的另一个目录,例如external2,所以结构如下:

MyRepo
   external2/MySub (git submodule)
   .gitsubmodules
Run Code Online (Sandbox Code Playgroud)

我做了什么,并且已经足够了,我只是将(通过操作系统mv)external1/MySub目录移动到external2/MySub并将.gitsubmodules文件编辑为:

$ cat .gitsubmodules

  [submodule "external2/MySub"]
  path = external2/MySub
  url = user@repo:/remoterepo/externals/MySub.git
Run Code Online (Sandbox Code Playgroud)

在此更改后,我收到以下错误:

$ git status

  fatal: Could not chdir to '../../../../../repo/external/MySub': No such file or directory
  fatal: 'git status --porcelain' failed in submodule repo/external2/MySub
Run Code Online (Sandbox Code Playgroud)

我错过了什么?这种搬迁需要做出任何其他改变吗?

(我在Windows 8.1上使用git版本1.8.3rc3)

git git-submodules

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

在PowerShell中等待所有子进程完成

我想同时在PowerShell中执行多个外部脚本,然后等待所有这些脚本完成后再继续.目前我正在使用'start-process -NoNewWindow ...'命令行开关,它循环遍历所有子进程,但随后终止.

我找到了很多方法等待1个进程完成(这显然是微不足道的)但是它们似乎都不能解决我的问题.

在PowerShell中拥有UNIX版本的等价物肯定是我想要的.

powershell process wait

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

运行Cygwin命令时"无法使stderr与stdout不同"

我试图在我的Windows 7 x64操作系统上设置一些旧版本的Cygwin.到现在为止还挺好.现在我陷入了srdout/stderr区分问题:

$ vmake
  1 [main] make 7060 dtable::stdio_init: couldn't make stderr distinct from stdout

$ ls /
  1 [main] ls 8180 dtable::stdio_init: couldn't make stderr distinct from stdout
Cygwin.bat  Cygwin.ico  bin  cygdrive  etc  lib  proc  setup.log  setup.log.full  tmp  usr  var
Run Code Online (Sandbox Code Playgroud)

我在跑步:

$ uname -srv
  1 [main] uname 5876 dtable::stdio_init: couldn't make stderr distinct from stdout
CYGWIN_NT-6.1-WOW64 1.5.25(0.156/4/2) 2008-06-12 19:34
Run Code Online (Sandbox Code Playgroud)

Cygwin安装选择了DOS行结束选项(对于某些遗留代码兼容性).

修复行结尾的另一个问题(bash有麻烦处理/ cygdrive/c/cygwin-legacy/bin/vmake脚本,如此处描述的问题:http://chess.eecs.berkeley.edu/softdevel/faq/5.html )我已将这些添加到〜/ .bash_profile:

export SHELLOPTS
set -o igncr
Run Code Online (Sandbox Code Playgroud)

在阅读http://lists-archives.com/cygwin/50369-run-requires-cygwin-tty.html之后,我还设置了:

$ CYGWIN=tty
Run Code Online (Sandbox Code Playgroud)

这没有改变.我还在

1 …
Run Code Online (Sandbox Code Playgroud)

cygwin stdout stderr windows-7

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

在Windows Phone 8.1模拟器上从Store安装应用程序时出现错误80070002

尝试从Windows Phone 8.1 WVGA 4英寸512MB仿真器上的Store安装任何应用程序时会发生这种情况.它首先要求使用Microsoft帐户登录,创建备份等.然后在按某个应用程序的安装按钮后会出现错误对话框.

错误对话框中的完整消息:

完成您的请求时出现问题.稍后再试.

询问大脑可能会发现此错误代码有用:80070002

[关]

我尝试了以下解决方案,该线程启用了管理员帐户,登录(以便显示C:\ Users\Administrator文件夹)并重新启动模拟器.不幸的是,这没有帮助.

hyper-v windows-phone-8 windows-phone-8.1

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

如何告诉nuget将包资源文件添加为链接,而不是将它们复制到项目目录中

简介(如何将资源打包到nuget包中)

要将一些资源文件打包到nuget包中,通常会执行以下操作.

将所有资源文件放入content\nuget包的目录中.这将由.nuspec文件中的以下行指定:

<files>
  <file src="Project\bin\Release\script.js" target="content\js\script.js" />
<files>
Run Code Online (Sandbox Code Playgroud)

现在,当安装此nuget包时,会AnotherProject出现以下文件结构:

Solution.sln
packages\Project.1.0.0\content\js\script.js  // the original resource file
AnotherProject\js\script.js                  // a physical copy 
AnotherProject\AnotherProject.csproj         // <Content /> tag (see below)
Run Code Online (Sandbox Code Playgroud)

在软件包安装过程中,AnotherProject.csproj注入了标签:

<Content Include="js\script.js" />
Run Code Online (Sandbox Code Playgroud)

这是原始资源的物理副本(位于packages\目录下).

实际问题(如何将资源打包到nuget包中作为链接)

我的目标不是在AnotherProject目录中拥有资源文件的物理副本,而是在packages\目录下拥有原始资源的"链接" .在csproj中,这应该是这样的:

<Content Include="packages\Project.1.0.0\content\js\script.js">
  <Link>js\script.js</Link>
  <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
Run Code Online (Sandbox Code Playgroud)

我宁愿避免的蛮力解决方案

现在,我能想到的一个"难以实现"的解决方法是:

  • 没有放置资源文件,content\所以它们不会自动添加,
  • 编写Install.ps1破解csproj文件结构的脚本并手动添加必要的XML片段,

然而,这具有以下缺点:

  • 我所有的nuget包需要相同的脚本片Install.ps1,
  • 在安装我的软件包时,Visual Studio中会出现一个令人讨厌的"项目重新加载提示".

.net c# nuget

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

有没有办法在TFS 2013托管的远程Git存储库上git gc/prune?

随着时间的推移.git,TFS 2013(Update 4)上托管的Git存储库的文件夹大小会增加.

每当克隆这些存储库时,.git文件夹最初的大小可能很大,直到git gc --aggressive --prune=now手动执行.

微软表示,TFS 2013不会自行执行git gc操作.不幸的是,似乎也无法强迫TFS这样做.

有没有办法gc/prune托管在TFS 2013中的Git存储库来减少.git目录的初始大小?

git tfs garbage-collection tfs2013 azure-devops

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

UrlHelper.Route和UrlHelper.Link方法有什么区别?

看看msdn(UrlHelper.Route,UrlHelper.Link),它们看起来完全相同.是否有任何理由使用其中一个?

c# asp.net urlhelper

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

Windows 应用认证工具包验证期间出现“检测到高操作系统版本验证”错误

运行时出现以下测试失败Windows App Certification Kit 10.0

Platform version launch

Error Found: The high OS version validation detected the following errors:

Cannot launch App
The app <apppackagename> failed platform version launch test.

Impact if not fixed: The app should not use version information to provide functionality that is specific to the OS.

How to fix: Please use recommended methods to check for available functionality in the OS. See the link below for more information.
Run Code Online (Sandbox Code Playgroud)

任何有关如何解决该问题的反馈表示赞赏。

windows-store windows-store-apps win-universal-app windows-10

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

如何使用自定义授权程序和空$ context.authorizer.*变量测试API网关方法?

我有一个API网关,其POST方法直接放在DynamoDB表中.我的方法也配置为通过Lambda使用自定义授权程序.

在我的模板映射中,我正在使用一些授权变量,例如$context.authorizer.principalId$context.authorizer.accountId.简化的模板映射如下所示:

{ 
"TableName": "$stageVariables.tableName",
"Item": {
    "AccountId": {
        "S": "$context.authorizer.accountId"
        },
    "Id": {
        "S": "$context.requestId"
        },
    "Content": {
        "S": "$input.path('$.content')"
        },
    "UserId": {
        "S": "$context.authorizer.principalId"
        }
}
Run Code Online (Sandbox Code Playgroud)

}

现在,当我向部署到实际阶段的此API方法发出HTTP请求时,该请求将通过自定义授权程序并提供/填写$context.authorizer.*模板中的所有变量,如下所示:

{ 
"TableName": "MyTable",
"Item": {
    "AccountId": {
        "S": "12345"
        },
    "Id": {
        "S": "6fd5ff08-34c0-11e7-bf96-591a565835b3"
        },
    "Content": {
        "S": "my content"
        },
    "UserId": {
        "S": "userid-123456789"
        }
}
Run Code Online (Sandbox Code Playgroud)

}

通过API网关测试按钮测试API方法时,测试请求绕过自定义授权程序(这是有道理的,因为授权程序可以单独测试)并生成如下结果:

{ 
"TableName": "MyTable",
"Item": {
    "AccountId": {
        "S": ""
        },
    "Id": {
        "S": …
Run Code Online (Sandbox Code Playgroud)

velocity amazon-web-services aws-api-gateway

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

Azure移动服务错误:在程序集中找到多个具有名称的静态类作为引导程序

从Visual Studio 2013部署新版本的C#MobileService项目后,Azure日志中报告了以下错误:

在程序集中找到了多个名为"WebApiConfig"的静态类作为引导程序:{{My.MobileService.Project,myMobileService}}.请仅提供一个类或使用"IBootstrapper"属性来定义唯一的引导程序.

实际上,如果提到的类文件有多个版本,如何在部署新版本之前清理它?

c# azure asp.net-web-api azure-mobile-services

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

何时使用推送位置与设置位置?

乍一看,在更改当前目录时,Set-LocationPush-Location PowerShell cmdlet看起来很相似.

每个用例是什么?什么时候选择使用一个而不是另一个?

powershell directory-structure

4
推荐指数
1
解决办法
5633
查看次数

如何从CloudFormation模板中获取AWS IOT端点URL?

我希望我的一些Lambda资源可以使用aws-sdkAWS.IotData({ endpoint: url })功能推送到AWS IOT终端节点-终端节点是必需参数。

现在,我正在通过环境变量将终结点URL传递给我的Lambda。但是,当放入SAM / CF模板时,我找不到一种方法来检索我的IOT终结点URL,因此可以轻松!Ref实现。

浏览AWS资源类型参考时,我没有找到与IOT端点相对应的任何资源。

看来只能通过AWS控制台(启用/禁用)手动配置IOT终端节点,如以下屏幕截图所示:

物联网终端AWS控制台

关于如何控制供应IOT端点或至少从SAM / CF模板中读取IOT URL的任何建议,而无需编写脚本aws-cli

amazon-web-services aws-cloudformation aws-lambda aws-iot

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