小编dan*_*ann的帖子

Mercurial:检查上次提取/更新是否引入了更改

我是编写更新脚本的过程,它提取了许多存储库的最新版本,并重建了项目.我想使构建有条件,所以我尝试了

hg pull -u && ant clean build
Run Code Online (Sandbox Code Playgroud)

和变化

hg pull; hg update && ant clean build
Run Code Online (Sandbox Code Playgroud)

但是,即使没有任何更改,也始终会调用ant构建.我知道hg incoming在拉动之前我可以用来检查变化,但这对我来说是浪费.

如何检查新的更改,而无需联系服务器两次(一次hg incoming,一次hg pull)?

更新:这是我的构建脚本:

update() {
  TIP=$(hg tip --template "{node"})
  hg pull -u
  if test "$TIP" != $(hg tip --template "{node}"); then
    ant clean build
  fi
}

(cd repo1; update )
(cd repo2; update )
Run Code Online (Sandbox Code Playgroud)

对于那些想知道为什么我每次都做一个干净的构建的人来说,有两个原因:

  1. 存储库彼此依赖,当其中一个存储库中的API发生更改时,我需要进行完全重建以查找这些API更改中断代码的位置
  2. Java编译器也会从其他类文件中内联常量.现在,当我将类中的常量更改回可以更改的字段时,使用该常量的所有其他类文件仍然不受构建的影响,这可能会导致我想要避免的细微错误.

bash mercurial dvcs build

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

用于检查Windows DLL的Linux工具

我必须调试Windows DLL的问题,但我只是运行Linux,所以我想知道是否有(最好是命令行)工具来检查Linux下的Windows DLL.我正在寻找的主要是导出符号列表.

linux windows dll inspection

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

创建网络错误以测试分布式系统

我正在开发一个用于通过HTTP进行通信的Java库,我想测试其可靠性和性能,以防网络问题,如数据包丢失,高延迟,低带宽和拥塞.我正在使用Apache的httpclient库从客户端进行连接,而Java自己的com.sun.net.httpserver.HttpServer用于启动HTTP服务器.

是否有可用的库来做这种事情,或者我应该自己推出?我想我可以尝试将自己的org.apache.http.conn.scheme.SchemeSocketFactory插入客户端,并模拟上面提到的几个问题,但我更喜欢使用已经有效的东西:-)

这类似于为单元测试创​​建TCP网络错误的问题,但我正在寻找在Linux上涉及Java的解决方案.我看过针对该问题的建议点击,但我不确定它能提供我正在寻找的东西.

java distributed http

7
推荐指数
1
解决办法
904
查看次数

django-tenants:具有特定租户的 Python shell

我想使用“./manage.py shell”对特定租户运行一些Python命令,但是这样做的代码非常麻烦,因为我首先必须查找租户,然后使用with tenant_context(tenant)):然后将我的代码写入其中堵塞。

我认为 django-tenants 应该提供一个命令,但没有。

python django shell django-tenants

7
推荐指数
1
解决办法
1191
查看次数

java重用执行器

我在模拟系统上工作,在每个时间步,我必须模拟许多模型.我使用FixedThreadPool来加速计算:

ExecutorService executor = Executors.newFixedThreadPool(nThread);
for (Model m : models) {
  executor.execute( m.simulationTask() );
}
executor.shutdown();
while ( ! executor.awaitTermination(10, TimeUnit.MINUTES) ) { 
  System.out.println("wait"); 
}
Run Code Online (Sandbox Code Playgroud)

现在,执行程序execute()在调用后不能用于新任务shutdown().有没有办法重置执行程序,所以我可以在下一个模拟步骤中重用现有的执行程序(及其线程)?

java multithreading java.util.concurrent concurrent-programming

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

用于检查mercurial内部文件的工具

Git具有cat-file检查内部文件的命令,例如git cat-file blob 557db03将显示其哈希以557db03开头的对象的内容.

是否有类似的工具可以让我查看merfcurial内部使用的所有不同数据文件?

mercurial internals

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

Spacemacs:在多个项目中搜索文件

我知道我可以使用“SPC p f”来搜索当前项目中的文件,这对我来说意味着 git 存储库。现在,在我当前的项目中,我们有多个 git 存储库,我想在所有这些存储库中搜索文件。幸运的是,它们都位于同一个目录中(例如 ~/projects/x/)。

Spacemacs 中是否有一个命令可以让我在 ~/projects/x 下的所有 git repos 中搜索文件?

spacemacs

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

Vim命令在行尾有不同的行为

我已经定义了几个地图,这些地图包含了一段选定的文本,例如将"text"转换为"\ texttt {text}".这是这样一张地图的一个例子:

vmap <buffer> ,t xi\texttt{<Esc>pa}<Esc>
Run Code Online (Sandbox Code Playgroud)

但是,当所选文本位于行尾时,此映射无法按预期工作.以这一行为例:

word1 word2 word3
Run Code Online (Sandbox Code Playgroud)

当我viw,t对行中的每个单词执行正常命令时,这是我得到的结果:

\texttt{word1} \texttt{word2}\texttt{word3} 
Run Code Online (Sandbox Code Playgroud)

带有尾随空格,即最后一个插入texttt{错误的位置.

如何将地图更改为无论在何处执行都能正常工作?

vim

0
推荐指数
1
解决办法
69
查看次数