小编Hug*_*lle的帖子

SVN 结帐失败/客户端在 Windows7 64 位下冻结

我想查看一个 SVN 存储库,但它超时了。我的环境是 Windows 7,64 位。我尝试过:1) TortoiseSVN,一个 shell 集成插件,2) RapidSVN,一个 GUI 3) Cygwin 使用命令行

svn checkout http://ticpp.googlecode.com/svn/trunk/
Run Code Online (Sandbox Code Playgroud)

(我已经尝试过其他存储库,所以它不是特别的那个)请注意,只需在 Mozilla Firefox 中键入地址即可浏览该存储库。

无论我尝试什么,它都失败了:应用程序冻结并且必须被杀死。我什至无法浏览存储库或查看修订版本。

我曾尝试关闭防火墙,但没有帮助。

可能是什么原因/我还应该尝试什么?

svn version-control tortoisesvn version rapidsvn

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

Groovy Map.get(key,default)会改变地图

我有以下Groovy脚本:

mymap = ['key': 'value']
println mymap

v = mymap.get('notexistkey', 'default')

println v
println mymap
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我得到以下控制台输出:

[key:value]
default
[key:value, notexistkey:default]
Run Code Online (Sandbox Code Playgroud)

我很惊讶,当调用mymap.get('notexistkey', 'default')第二个参数是一个默认值时,当给定的键不存在时,该键notexistkey被添加到我称之为方法的地图上.为什么?这是预期的行为吗?我怎样才能防止这种突变?

groovy dictionary mutability

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

如何使用`git format-patch`和`git am`将文件从一个git repo移动到另一个保存历史记录

问题

我想将一个文件夹(和子文件夹包含文件)从一个存储库移动到另一个存储库,保留历史记录.

我在SE上找到了一种方法:如何将文件从一个git repo移动到另一个(不是克隆),保留历史记录.还有一个关于blog.neutrino.es的不同想法.这是我想在这里讨论的最后一个.

试图解决方案

mkdir /tmp/mergepatchs
cd ~/repo/org
export reposrc=myfile.c #or mydir
git format-patch -o /tmp/mergepatchs $(git log $reposrc|grep ^commit|tail -1|awk '{print $2}')^..HEAD $reposrc
cd ~/repo/dest
git am /tmp/mergepatchs/*.patch
Run Code Online (Sandbox Code Playgroud)

如果我理解正确,我的想法是假装我们将通过电子邮件提交提交,并在另一个存储库中重新导入它们.

错误

我在执行以下操作时收到此错误消息git am /tmp/mergepatchs/*.patch:

Applying: Initial commit
error: .gitignore: already exists in index
error: README.md: already exists in index
Patch failed at 0001 Initial commit
The copy of the patch that failed is found in:
   /Users/myuser/repo/org/.git/rebase-apply/patch
When you have resolved this problem, run …
Run Code Online (Sandbox Code Playgroud)

git

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

如何通过方法的运行时选择来实现策略模式?

语境

我正在尝试在 Python 2.7 中实现策略模式的一些变体。我希望能够实例化“my_strategy”基类,但在运行时在“score”方法的不同实现之间切换。我将在“my_strategy”中有许多常用方法,但有一堆“score”实现。主要说明了我想如何使用它当然,这里的评分实现是虚拟的。

我尝试过的(即到目前为止我的代码)

策略.py:

from algo_one import *
#from algo_two import *


class my_strategy ( object ):

    def __init__(self, candidate = ""):
        self.candidate = candidate
        self.method = 'default'
        self.no = 10
        self._algo = algo_one

    def set_strategy(self, strategy='default'):
        self.strategy = strategy
        if self.strategy == 'algo_one':
            self._algo = algo_one
        elif self.strategy == 'algo_two':
            # self._algo = algo_two
            pass 
        else:
            self._algo = None

    def score(self, *args):
        if len(args) > 0:
            self.candidate = args[0]
        self._algo.score(self.candidate)

if  __name__ == "__main__": …
Run Code Online (Sandbox Code Playgroud)

python inheritance strategy-pattern

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