小编wit*_*rin的帖子

使用SSH为Phabricator配置Git

我正在尝试为Phabricator配置SSH以使git运行.我已经按照这个手册,但是当我打电话时,echo {} | ssh git@phabricator.mydomain.com conduit conduit.ping我总是得到一个空的结果或Permission denied (publickey,keyboard-interactive)..

/etc/ssh-phabricator/sshd_config:

AuthorizedKeysCommand /usr/libexec/ssh-phabricator-hook
AuthorizedKeysCommandUser git

Port 22
Protocol 2
PermitRootLogin no
AllowAgentForwarding no
AllowTcpForwarding no
PrintMotd no
PrintLastLog no
PasswordAuthentication no
AuthorizedKeysFile none
Run Code Online (Sandbox Code Playgroud)

/etc/passwd:

phd:x:999:999::/var/tmp/phd:/bin/false
git:x:1005:1005::/home/git:/bin/bash
Run Code Online (Sandbox Code Playgroud)

/etc/shadow:

phd:!:16135::::::
git:NP:16135:0:99999:7:::
Run Code Online (Sandbox Code Playgroud)

/etc/sudoers:

git ALL=(phd) SETENV: NOPASSWD: /usr/bin/git-upload-pack, /usr/bin/git-receive-pack, /bin/false
Run Code Online (Sandbox Code Playgroud)

~/.ssh/config:

Host phabricator.mydomain.com
    HostName phabricator.mydomain.com
    Port 22
    IdentityFile /c/Users/.../.ssh/id_rsa_phabricator
    PreferredAuthentications publickey
    User git
Run Code Online (Sandbox Code Playgroud)

UPDATE

我的问题的原因是:

  • 我没有在客户端使用SSH密钥.
  • 我没有确保git用户有一个shell.

git ssh phabricator

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

使用MapReduce查找数字的平均值

我一直在尝试编写一些代码来使用MapReduce查找数字的平均值.

我试图使用全局计数器来达到我的目标,但我无法在map我的Mapper方法中设置计数器值,我也无法在reduce我的Reducer方法中检索计数器值.

我是否必须使用全局计数器map(例如使用incrCounter(key, amount)提供的Reporter)?或者你会建议任何不同的逻辑来获得一些数字的平均值?

java distributed hadoop mapreduce

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

如何使用XPath选择所有空元素

假设以下标记:

<html>
  <body>
    <p>
      <strong>  </strong>
      <strong>
      </strong>
      <strong><em>Bar</em>  </strong>
      <strong><em>  </em>  </strong>
    </p>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

如何使用XPath查询获取以下元素?

<strong>  </strong>
<strong>
</strong>
<strong><em>  </em>  </strong>
Run Code Online (Sandbox Code Playgroud)

我认为它会像//*[normalize-space(text()) = '' and not(node())]第一种情况一样,但事实并非如此.我不知道如何抓住第三种情况.

更准确地说:我正在搜索所有仅包含空格,新行和子节点的节点.

xpath

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

LibreOffice Calc中的自动高度

通常情况下,您可以使用PHPExcel格式化自动高度行,如下所示:

$file = new PHPExcel();
$file->getActiveSheet()->setCellValue('A1', 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.');
$file->getActiveSheet()->getRowDimension(1)->setRowHeight(-1);
$file->getActiveSheet()->getStyle('A1')->getAlignment()->setWrapText(true);
$writer = PHPExcel_IOFactory::createWriter($file, 'Excel2007');
$writer->save(str_replace('.php', '.xlsx', __FILE__));
Run Code Online (Sandbox Code Playgroud)

问题是当您使用LibreOffice Calc打开此类文件时,这不起作用.相反,您必须选择单元格,选择Format Cells...并单击OK.

这似乎是一个已知的错误,但不幸的是,通过在第1004行添加以下else块提出的解决方案似乎不起作用:Classes\PHPExcel\Writer\Excel2007\Worksheet.php

else {
    $objWriter->writeAttribute('customHeight', 'false');
    $objWriter->writeAttribute('ht', '0');
}
Run Code Online (Sandbox Code Playgroud)

怎么能修好?

phpexcel libreoffice-calc

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

使用Chrome中的"z-index"在其固定父级下的元素

我希望element(div)在其固定的parent(header)下分层:

header {
  position: fixed;
  width: 100%;
  height: 100px;
  
  background-color: #ccc;
}
header > div {
  position: absolute;
  height: 100%;
  width: 100px;
  z-index: -1;
  
  transform: translateY(50%);
  background-color: #aaa;
}
Run Code Online (Sandbox Code Playgroud)
<header>
  <div>
  </div>
</header>
Run Code Online (Sandbox Code Playgroud)

这适用于Firefox但不适用于Chrome.要修复它,您需要这样做:

header {
  position: fixed;
  width: 100%;
  height: 100px;
}
header > div {
  position: relative;
  width: 100%;
  height: 100%;
  
  background-color: #ccc;
}
header > div > div {
  position: absolute;
  height: 100%;
  width: 100px;
  z-index: -1;

  transform: translateY(50%);
  background-color: #aaa;
}
Run Code Online (Sandbox Code Playgroud)
<header> …
Run Code Online (Sandbox Code Playgroud)

html css webkit google-chrome z-index

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

如何在配置中使用数组`env`解析器?

ips我正在尝试使用这些文件在 Symfony 中设置访问控制参数.env。我在用着4.2.4

这是我的配置的摘录:

security:
     access_control:
         -
             ips: '%env(csv:VAR)%'
Run Code Online (Sandbox Code Playgroud)

这是我的环境变量的摘录:

VAR=172.16.0.0/12,127.0.0.1
Run Code Online (Sandbox Code Playgroud)

这是例外:

无效类型异常

路径“security.access_control.0.ips.0”的类型无效。需要“bool”、“int”、“float”、“string”之一,但得到“array”。

我知道这...ips.0是 的一个元素ips,因此它不一定是 的array。但我不明白为什么它试图将整个数组不分配给ips. 我在这里犯了什么错误?

configuration yaml symfony symfony4

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

如何在android中创建一个简单的设置页面?

我是"Android-App-Dev"-Scene的新手,有一个问题:

如何为我的应用轻松制作一个干净整洁的设置页面?

有一些标题和某些大按钮可以选项卡转到新页面.

我正在使用Android Studio并知道如何创建新页面,类等.

java settings android android-studio

4
推荐指数
2
解决办法
9365
查看次数

使用grunt-ssh递归复制文件

我尝试使用grunt-ssh进行部署.但我只获得了复制文件夹的文件:

sftp: {
  deploy: {
    files: {
      "./": "doc/*"
    },
    options: {
      path: '<%= pkg.server.path %>',
      host: '<%= pkg.server.host %>',
      username: '<%= pkg.server.user %>',
      password: '<%= pkg.server.password %>',
      showProgress: true,
      srcBasePath: 'doc/'
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

如何将整个本地文件夹(包括其子文件夹(递归)doc复制到远程?

deployment gruntjs grunt-ssh

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

如何在不排序的情况下获得前k个最常见的单词?

在spark中,我们可以轻松地使用map reduce来计算单词出现时间,并使用sort来获取前k个常见单词,

// Sort locally inside node, keep only top-k results,
// no network communication

val partialTopK = wordCount.mapPartitions(it => {
    val a = it.toArray
    a.sortBy(-_._2).take(10).iterator
}, true)


// Collect local top-k results, faster than the naive solution

val collectedTopK = partialTopK.collect
collectedTopK.size


// Compute global top-k at master,
// no communication, everything done on the master node

val topK = collectedTopK.sortBy(-_._2).take(10)
Run Code Online (Sandbox Code Playgroud)

但是我想知道是否有更好的解决方案,根本避免排序?

scala apache-spark

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

TYPO3流体视图助手`f:for`的内联表示法

我想f:for通过使用其内联表示法在TYPO3 Fluid模板中使用loop()填充属性值:

<div class="one two three">[...]</div>
Run Code Online (Sandbox Code Playgroud)

有谁知道怎么做?

fluid view-helpers

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

如何用JavaScript编写循环

我尝试制作这样的代码:

var code1 = a, code2 = b, code3 = c;
var x = 3;

for (y = 1; y <= x; y++) {
  //this part where i dont know about
  alert ();
}
Run Code Online (Sandbox Code Playgroud)

那么如何让它警告code1,code2和code3?我的意思是这会警告值a,b和c.我试着用alert("code"+y);alert(code+y);,但不会做.

javascript

0
推荐指数
2
解决办法
85
查看次数