小编Seb*_*tin的帖子

如何在省略新文件的同时更改git仓库中的文件

我有一个git repo,其中包含一个文件夹,其中包含自动生成的源代码文件.加班,对该代码进行了一些轻微的手动修改.我现在处于需要重新生成文件的位置,但我不想错过任何更改.

我想做的是随着时间的推移获得对该文件夹所做的所有更改的差异,但是要排除每个文件的原始"添加".这样我就可以将diff应用于新的文件集.

还有一个更重要的细节:并非所有文件都是同时添加的.添加内容与编辑混合在一起.所以它并不像从特定提交开始生成diff那么简单.

有任何想法吗?

更多背景:

  • 自动生成的文件是从WSDL文件生成的SOAP代理类
  • 我们正在处理多个服务,因此在需要时添加了类.
  • 我们收到了一个更新的服务器虚拟机,其中包含一些包含小修复的WSDL
  • 用于生成代理类的工具有一些不完整的实现,因此对这些文件所做的更改是解决方法

种子:

  • 有没有办法知道第一次提交文件的SHA?的味道git loggrepsed我猜?
  • 也许得到一个特定文件的提交计数,其中1 ==没有更改只有插入,我可以grep那些?

git diff

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

将Swift泛型类转换为具有typealias的协议

我疯了还是不应该这个快速的代码编译?

protocol Protocol {
  typealias Thing
}

class Class<X>: Protocol {
  typealias Thing = X
}

func test<X:Protocol where X.Thing == Int> () -> X {
  return Class<Int>()  // error: cannot convert return expression of type 'Class<Int>' to return type 'X'
}
Run Code Online (Sandbox Code Playgroud)

即使泛型类型和aliastype匹配,我似乎无法将对象强制转换为其协议.

编辑:

我通过从现有代码中提取逻辑来提出上述代码,以简化问题.这样做我犯了一些错误.这是一个更新的(并且希望不那么令人困惑)代码示例:

protocol Protocol {
    typealias Thing
}
class Class<X>: Protocol {
    typealias Thing = X
}
func test<Y: Protocol where Y.Thing == Int> () -> Y {
    return Class<Y.Thing>()
}
Run Code Online (Sandbox Code Playgroud)

我希望编译器允许test()以结果类型编译Protocol<Int>.

generics swift

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

git-tf是否允许合并远程分支?樱桃采摘怎么样?

我们在发布周期中维护多个TFS分支.当前流程是在完成用户故事时将WIP分支中的变更集挑选到测试分支.

我很想知道git-tf是否允许以这种方式使用多个远程分支,并且它是否能够检入合并而不是检查看起来像新代码的代码.

这里有一个讨论:

使用git tfs合并两个TFS分支

并且有人提到git-tfs不能与直接使用VS的其他人玩得很好.有谁知道git-tf的情况如何?

git-tf

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

名为MacOS和iOS应用程序的文本字段控件中的蓝色原子分组/标签是什么?它是标准的操作系统功能吗?

我不知道怎么称呼这些,所以我很难用谷歌搜索它.我已经在iOS和MacOS应用程序中多次看到这些,认为它们可能是一个操作系统功能.我在谈论文本字段控件中的蓝色标签或组.见下图.

Mail.app

Telephone.app

macos cocoa ios

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

PHP的imagepng()方法保存了无效的图像

我正在使用GD库自动生成上传图像的缩略图版本.我调用相应的image____()函数以与原始格式相同的格式保存.我的代码适用于JPEG和GIF,但如果我上传PNG文件,则生成的缩略图无效.它实际上只包含33个字节(到目前为止我已尝试过任何源PNG).此图像不会显示在浏览器中,也不能通过预览(在MacOS上)打开.

我使用imagecreatetruecolor()和imagecopyresampled()来生成缩略图,如下所示:

function _resizeImageToFit($resource, $size)
{
    $sourceWidth = imagesx($resource);
    $sourceHeight = imagesy($resource);  
    if($sourceWidth >= $sourceHeight) {
        // landscape or square
        $newHeight = 1.0*$size/$sourceWidth*$sourceHeight;
        $newWidth = $size;
    }
    else {
        // portrait
        $newWidth = 1.0*$size/$sourceHeight*$sourceWidth;
        $newHeight = $size;
    }
    $thmb = imagecreatetruecolor($newWidth, $newHeight);
    imagecopyresampled($thmb, $resource, 0, 0, 0, 0, $newWidth, $newHeight, $sourceWidth, $sourceHeight);
    return $thmb;
}
Run Code Online (Sandbox Code Playgroud)

以下是我的设置的版本信息(它的MAMP版本1.9.4)

捆绑的PHP版本5.3.2 GD版本(兼容2.0.34)

以下是无效生成的缩略图(PNG)的示例:

APNG

IHDRdaØMì∞

php gd

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

标签 统计

cocoa ×1

diff ×1

gd ×1

generics ×1

git ×1

git-tf ×1

ios ×1

macos ×1

php ×1

swift ×1