小编Tum*_*oid的帖子

如何在重命名SVN文件夹时将其拆分为自己的存储库?

我想将目录从大型Subversion存储库拆分为自己的存储库,并将文件的历史记录保存在该目录中.

我尝试了常规方法

svnadmin dump /path/to/repo > largerepo.dump
cat largerepo.dump | svndumpfilter include my/directory >mydir.dump
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为多年来已经移动和复制了目录,并且文件已经移入和移出存储库的其他部分.结果是很多这些:

svndumpfilter: Invalid copy source path '/some/old/path'
Run Code Online (Sandbox Code Playgroud)

我尝试的下一件事是在/some/old/path它们出现时包含那些,并且在包含很长的文件和目录列表之后,svndumpfilter完成,但导入生成的转储不会产生与当前目录相同的文件.

那么,如何在保留历史记录的同时正确地从该存储库中拆分目录?

编辑:我特别想trunk/myproj成为一个新的存储库中的主干PLUS让新的存储库不包含其他任何旧的东西,即.任何人都不可能在拆分之前更新到旧版本并获取/查看文件.

我试过的svndumpfilter解决方案可以实现这一点,遗憾的是它不可行,因为路径/文件已被移动.ng解决方案是不可接受的,因为它基本上是克隆+删除附加内容,这保留了所有历史记录,而不仅仅是相关的myproj历史记录.

svn split repository

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

在C++/CLI中,hat字符^有什么作用?

我正在阅读Ivor Horton的Beginning Visual C++ 2008,其许多CLR示例都有main的定义:

int main(array<System::String ^> ^args)
Run Code Online (Sandbox Code Playgroud)

我一页又一页地回到书的开头找到第一个这样的实例,并解释了它的真正含义,但找不到一个.

显然它意味着与标准相同int main(int argc, char *argv[]),但我想知道^实际使用的时间和原因,以及为什么它甚至存在(它是否做了指针*和引用&无法表示的东西)?

clr c++-cli visual-c++

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

Qmake中win64配置的标识符

Qmake项目文件中是否有"win64"标识符?Qt Qmake高级文档除了unix/macx/win32之外没有提及.

到目前为止,我已尝试使用:

win32:message("using win32")
win64:message("using win64")
amd64:message("using amd64")
Run Code Online (Sandbox Code Playgroud)

结果总是"使用win32".

我必须为x32和x64项目使用单独的项目文件,因此它们会针对正确的库进行编译吗?有没有其他方法可以识别32位和64位环境?

windows 64-bit qt qmake qt4

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

Qt中有哪些功能或概念让你恼火?

Qt是一个很好的框架和优秀的UI工具包,它有许多有用的功能和概念.我们大多数人可能都同意,最近诺基亚的奇趣科技公司在开发它方面做得非常好.Qt的最新进展之一是QML,我发现它具有令人着迷的进步.

但是,我发现一些设计糟糕或执行不当的概念,例如模型/视图(概念很好,但实现不是),同样适用于Phonon媒体框架.有人说它的元对象概念让他们发疯.

所有这些显然或多或少都是主观的,但是你在Qt中使用哪些特征或概念令人烦恼或烦恼?你如何绕过它们?

qt qt4

17
推荐指数
3
解决办法
2677
查看次数

从另一个应用程序窗口中的文本字段读取

Windows应用程序是否有办法访问另一个应用程序数据,更具体地说是GUI中的文本输入字段,并在那里获取文本以便在我们自己的应用程序中进行处理?

如果有可能,有没有办法"屏蔽"您的应用程序以防止它?

编辑:三个第一个答案似乎是关于获取另一个应用程序窗口标题,而不是该窗口中的特定文本输入字段.

我不是Windows API所期望的,所以你能更准确地说明如何在该窗口中找到某个文本字段,它的先决条件是什么(似乎知道窗口句柄需要什么,是否需要知道文本字段还要处理?我怎么做到?等等......)

C++中的代码片段确实非常值得赞赏.MSDN帮助很难浏览,因为Win32-API有如此可怕的命名约定.

已完成!请参阅下面的答案,了解C++中的操作方法.

c++ user-interface winapi textbox ipc

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

lua 64位转换问题

我真的希望有一些帮助可以解决这个问题.有没有人曾经在需要同时支持32位和64位的应用程序中使用过lua?我们目前正在转换到64位,但是客户端编译的lua脚本遇到问题,我们无法使用64位版本重新编译.所以实际上我们需要能够在64位应用程序中加载使用32位lua编译的字节码文件.当我们尝试这样做时,我们收到一条错误消息:

test.bin.lua中的虚拟机不匹配:size_t的大小为8但读取为4

当然,这是一个明确的64位转换问题.如果没有重新编译二进制文件的能力,那么困难的只是弄清楚如何处理它.

谢谢

64-bit lua 32-bit 32bit-64bit

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

Upstart init正在泄漏内存,你如何调试呢?

我在Upstart init进程(pid 1)中有内存泄漏,我在调试时有哪些选项?

编辑:建议我一些真正的工具,手动输入printfs或手动计算内存分配不会削减它.同时转储init核心并探索它并不是一个真正的选择.

UPD1: valgrind不起作用.使用正确的valgrind + init magic替换内核命令行上的/ sbin/init似乎不是一个选项,因为它尝试访问/ proc for self for smaps,但是在init运行之前它们不可用.

UPD2: dmalloc也不起作用(不在ARM上编译).

linux embedded memory-leaks init upstart

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

为什么制作64位版本的软件如此困难?

在将软件设计到64位环境时,必须考虑哪些方面,以及为什么相同的代码不能像32位和64位(在谈论应用程序时)?

驱动程序显然是一个不同的野兽,缺少64位驱动程序是几乎所有硬件的臭名昭着的问题.在该领域有什么不同,几乎不可能找到驱动程序?

为什么制作64位版本的软件如此困难?

编辑:让我们忘记带有魔法数字等的老式,有缺陷的软件的基本缺陷,并认为你自己创建软件,以兼容两者.您需要考虑哪些方面,是否存在当前编译器设计无法克服的问题?所有缺失的64位软件都不能仅仅因为人们喜欢带有幻数的代码?!:)

结论:似乎完全是关于人类懒惰和历史原因,而不是技术原因.

compiler-construction 64-bit 32bit-64bit

6
推荐指数
2
解决办法
1212
查看次数

这种改组算法的效率和质量如何?

最近关于使用C#随机排序的这个问题让我想到了我有时在Perl中改组数组的方式.

@shuffled = sort { rand() <=> rand() } @array;
Run Code Online (Sandbox Code Playgroud)

在上述问题中提出的解决方案是Fisher-Yates shuffle,它在线性时间内工作.

问题是:我的代码片段效率如何,并且是如此随机"真正"随机?

sorting random perl performance

5
推荐指数
3
解决办法
1152
查看次数

为什么库名在其名称中获得额外的0?

我有一个像项目文件这样的小Qt项目:

TEMPLATE = lib
TARGET = record32
VERSION = 0.0.1
DEPENDPATH += .
INCLUDEPATH += .

CONFIG += shared
SOURCES += recorder.cpp
HEADERS += recorder.h
Run Code Online (Sandbox Code Playgroud)

当我从中编译库时qmake && nmake,它会产生文件

record32.obj
record320.lib
record320.dll
...
Run Code Online (Sandbox Code Playgroud)

为什么在lib和dll名称中添加了额外的0?

生成的makefile似乎没有附加它,而只是假设它,Makefile.Release它只是说:

####### Files

SOURCES       = recorder.cpp release\moc_recorder.cpp
OBJECTS       = release\recorder.obj release\moc_recorder.obj
DIST          = 
QMAKE_TARGET  = recorder
DESTDIR        = release\ #avoid trailing-slash linebreak
TARGET         = record320.dll
DESTDIR_TARGET = release\record320.dll
Run Code Online (Sandbox Code Playgroud)

如何防止它并按我的意愿命名我的库?

(注意手动修复makefile.release不是一个可以接受的解决方案)

qt nmake makefile qt4

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

在仅二进制产品中搜索我的源代码

假设我有一个我在GPL下发布的项目,任何人都可以使用这些项目.后来我找到了一个非常相似的产品,但作为封闭源,仅由其他人分发二进制.

有没有一种好方法可以找出他们在他们的产品中使用我的源代码?

如果解决方案是以某种方式对二进制文件进行逆向工程,是否有可能以某种方式自动化它?

编辑:澄清.bug搜索是一种选择,但不是决定性的,特别是如果项目是一个库并且二进制文件已经添加了自己的GUI,例如.我感兴趣的情况是当代码被解除时并不明显.

binary gpl reverse-engineering

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