小编Ale*_*lex的帖子

zsh compinit:不安全的目录

它是什么意思,我该如何解决?

zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]?
Run Code Online (Sandbox Code Playgroud)

运行compaudit返回如下:

There are insecure directories:
/usr/local/share/zsh/site-functions
Run Code Online (Sandbox Code Playgroud)

zsh zsh-completion

179
推荐指数
24
解决办法
6万
查看次数

git无法检测到重命名

一个分支(refactoringBranch)有一个完整的目录重组.文件被混乱地移动,但内容被保留.

我试图合并: git merge --no-ff -Xrename-threshold=15 -Xpatience -Xignore-space-change refactoringBranch

git status显示大约一半的文件重命名识别.但是项目中的10000个文件中有一半未被识别为移动.

一个例子是:

# On branch master
# Changes to be committed:

#   deleted:    404.php
#   new file:   public_html/404.php
    ...
#   deleted:    AnotherFile.php
#   new file:   public_html/AnotherFile.php
    ...
#   renamed:    contracts/css/view.css -> public_html/contracts/css/view.css
Run Code Online (Sandbox Code Playgroud)

建议?


史前

重构是在git之外进行的.我做了以下事情:

  1. 创造了refactoringBranch原产地master.
  2. 删除了里面更改的结构refactoringBranch,这意味着我在其他目录中进行了更改,只是将它们复制粘贴到我的git存储库中.
  3. 添加并提交了所有内容然后尝试合并.

这是我的工作流程:

git checkout -b refactoringBranch
cp -R other/place/* ./
git add . -A
git commit -a -m "blabla"
git checkout master
git merge --no-ff …
Run Code Online (Sandbox Code Playgroud)

git

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

php信号量不起作用

我有以下代码,信号量不会按预期锁定它.

(我知道apc_inc.这不是我想要的.)

$semkey = sem_get(123);
sem_acquire($semkey);

$count = apc_fetch('count111');
if(!$count) $count = 0;
$count++;
apc_store('count111', $count);

sem_release($semkey);
Run Code Online (Sandbox Code Playgroud)

其次是

ab -n 4000 -c 200 http://localhost/test.php

0请求失败.

但之后apc_fetch('count111')只显示了~1200次点击

nginx on ubuntu 12.04(64bit),php 5.3.16~dotdeb,php-fpm

  • 更新1:完美适用于Linux mint,5.4.6~dotdeb,内置于Web服务器.我将使用与nginx相同的版本尝试相同的机器.

php semaphore apc

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

针对不同实现的相同单元测试

假设我有两种搜索算法的实现,它们为同一输入返回相同的结果.它们都实现了相同的接口.

我如何使用单个[TestClass]来测试两个实现,而不是创建两个最终具有相同逻辑的测试文件?

我可以告诉MSUnit使用不同的构造函数参数两次启动其中一个测试吗?
也许我应该(n)以某种方式注入它?

java mstest

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

Errno :: EACCES:通过gitlab安装gem时权限被拒绝

我正在尝试设置gitlab,从而使用sudo从另一个用户帐户安装一些宝石,但我经常遇到Permission denied错误.

sudo -u gitlab -H bundle install --deployment --without development test postgres

> Using ... ( a lot of successful gems there )
> Using pygments.rb (0.3.2) from https://github.com/gitlabhq/pygments.rb.git (at master) 
> Errno::EACCES: Permission denied - pygments.rb-0.3.2.gem
> An error occurred while installing pygments.rb (0.3.2), and Bundler cannot continue.
> Make sure that `gem install pygments.rb -v '0.3.2'` succeeds before bundling.\



sudo -u gitlab -H gem install pygments.rb -v '0.3.2'

> Successfully installed pygments.rb-0.3.2
> 1 gem …
Run Code Online (Sandbox Code Playgroud)

ruby gem bundle bundler gitlab

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

Git将master合并到orphan而没有提交历史记录

给定一个orphan没有历史记录的master分支,从创建孤立的那一刻开始,我将如何合并在分支上完成的更改,而不会在远程推送孤立时复制所有提交历史记录.

A <- B <- C <- D  

        orphan(created from state B) <-X <- Y
Run Code Online (Sandbox Code Playgroud)

我想带cd以孤儿分支,然后xy掌握.

如果我做checkout orphan, merge masterrebase master孤儿获得提交,还有所有历史树.例如,当我将孤儿推送到远程服务器时,每个人都能够看到所有master's历史记录.

后来我想合并orphan回主人,带来提交xy那里.

编辑:

现在将孤儿合并到大师的工作正常 git merge

A <- B <- C <- D <------X <- Y
                       /  
        orphan <-X <- Y 
Run Code Online (Sandbox Code Playgroud)

但是,合并masterorphan要么将整个主历史记录放入孤儿(例如X先前B)或樱桃挑选,但我需要跳过合并提交并且还会遇到更多冲突

git

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

git merge忽略合并分支上存在的已删除文件(重命名文件)

我有树枝feature1master.
然后feature1我将文件重命名dir/file.txtdir2/file2.txt.
之后我改变了文件,master一周之后也改变了文件feature1.

我在整个项目中改变了40个文件.
当我尝试合并masterfeature1我使用低重命名阈值时.大多数文件都是正确自动合并的.提供了一些文件用于手动解决冲突.

但是一些具体文件既不会出现在merge自动合并的响应中,
也不会正确合并
.在正确的情况,我期待我可以解决的两个结果中的一个:
1.它不会检测重命名,只是将另一个添加dir/file.txtfeature1分支中.
它会检测重命名并让我手动解决冲突.

我查看时有很多变化
git difftool master:dir/file.txt feature1:dir2/file2.txt

因此我假设git识别重命名并决定保留我的版本而不通知我发生了什么.我该如何解决/调试呢?

这是我使用的命令

git config merge.renameLimit 9999999999
git merge --no-ff -Xrename-threshold=20 -Xignore-space-change master
Run Code Online (Sandbox Code Playgroud)

Upd1

在使用feature1分支时,我已删除了dir/file.txt.
也许git假定这个文件应该删除,因此忽略它的存在master.
重命名检测失败,尽管文件的相似性保持不变(levenshtein距离小于内容长度的2%)
另一个讨论建议"手动合并"将文件从分支复制到分支.

UPD2

正确解析了其他一些文件正确解析
CONFLICT (rename/delete): images/ab.gif deleted in master and renamed in HEAD. …

git merge

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

composer包测试bootstrap

我写了一个包,作为开发过程的一部分,我想对它进行单元测试.这基本上意味着我需要一个bootstrap文件来为我的包注册自动加载器.

我看到的任何包都没有特定的bootstrap文件,因此我不太了解开发人员如何测试自己的包.

这是我的目录结构

src
.CompanyName
..PackageName
...Class 1
...Class 2

tests
.Class1Test
.Class2Test

composer.json
phpunit.xml.dist
Run Code Online (Sandbox Code Playgroud)

现在,如果我phpunit在根目录中运行,我的所有测试\\CompanyName\\PackageName\\Class1都没有找到.哪个是精英,因为没有人包括它们.所以问题是 - 我如何以及何时包括我的课程.


看一下随机包我可以看到他们依赖vendor/autoload.php,但我没有这个供应商的目录.我应该跑去composer install创造吗?

php bootstrapping autoload composer-php

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

scala multi sbt 项目:对象不是包的成员,未找到类型

如何abc从项目中导入类main以供配置中项目web中的另一个类使用multi-project sbt

sbt compile我得到:
object abc is not a member of package com not found: type abc

虽然从 IntelliJ 内部编译成功。

生成.sbt

lazy val main = project.in(file("main"))
  .settings(commonSettings: _*)

lazy val web = project.in(file("web"))
  .settings(commonSettings: _*)
  .enablePlugins(PlayScala)
  .dependsOn(main)

lazy val root = (project in file("."))
  .dependsOn(web, main)
  .aggregate(web, main)
  .settings(commonSettings: _*)


mainClass in root in Compile := (mainClass in web in Compile).value

fullClasspath in web in Runtime ++= (fullClasspath in main …
Run Code Online (Sandbox Code Playgroud)

scala sbt

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

无法在 UseJwtBearerAuthentication 中验证令牌。授权被拒绝

使用单个 asp.net(4.6.1) web 项目,显然我无法验证在同一台服务器上生成的 jwt 令牌。
启动.cs

        var secret = Encoding.UTF8.GetBytes("12341234123412341234");
        var jwtFormatter = new CustomJwtFormat("Any", "local", secret);

        // This part checks the tokens
        app.UseJwtBearerAuthentication(new JwtBearerAuthenticationOptions
        {
            AuthenticationType = DefaultAuthenticationTypes.ExternalBearer,
            AuthenticationMode = AuthenticationMode.Active, // Block requests
            AllowedAudiences = new []{"Any"},
            TokenValidationParameters = new TokenValidationParameters
            {
                IssuerSigningKey = new InMemorySymmetricSecurityKey(secret),
                ValidAudience = "Any",
                ValidIssuer = "local"
            }
        });
        
        // This part issues tokens
        app.UseOAuthAuthorizationServer(new OAuthAuthorizationServerOptions
        {
            AllowInsecureHttp = false,
            TokenEndpointPath = new PathString("/auth"),
            AccessTokenExpireTimeSpan = TimeSpan.FromMinutes(30),
            Provider = new CustomOAuthProvider(), …
Run Code Online (Sandbox Code Playgroud)

c# jwt katana asp.net-web-api2 adal

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