我已经阅读了关于git的rerere功能的各种内容,我正在考虑启用它.但我没有看到有人提到使用它时可能出现的任何问题.我必须假设有一个缺点,或者它可能默认启用.那么启用rerere有什么缺点吗?哪些潜在的问题会导致不会发生?
我曾经在我的cygwin控制台中启动git gui没有任何问题,但是因为我更新了cygwin,我收到以下错误消息:
$ git gui
Application initialization failed: no display name and no $DISPLAY environment variable
Error in startup script: invalid command name "tk_messageBox"
while executing
"tk_messageBox -icon error -type ok -title "git-gui: fatal error" -message $err"
invoked from within
"if {[catch {package require Tcl 8.4} err]
|| [catch {package require Tk 8.4} err]
} {
catch {wm withdraw .}
tk_messageBox \
-icon error \
-typ..."
(file "/usr/lib/git-core/git-gui" line 34)
Run Code Online (Sandbox Code Playgroud)
谁知道如何解决这个问题?
我有兴趣在int
Python 中继承内置类型(我使用的是2.5版),但是在初始化工作时遇到了一些麻烦.
这是一些示例代码,应该是相当明显的.
class TestClass(int):
def __init__(self):
int.__init__(self, 5)
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试使用它时,我得到:
>>> a = TestClass()
>>> a
0
Run Code Online (Sandbox Code Playgroud)
在哪里我期待结果5
.
我究竟做错了什么?到目前为止,谷歌并没有太大的帮助,但我不确定我应该寻找什么
最终更新和修复:这里的解决方案结果是两件事:使用Windows Git而不是Grag Borland 建议的 Cygwin Git ,以及Git配置设置pack.threads = 1
和gc.aggressiveWindow = 150
.
我有一个大型的本地Git存储库,一个git svn clone
SVN存储库,大约有40,000次提交.我正试图git gc
在这个存储库上运行,并且无处可去:
$ git gc --auto
Auto packing the repository for optimum performance. You may also
run "git gc" manually. See "git help gc" for more information.
Counting objects: 25966, done.
Compressing objects: 100% (25249/25249), done.
fatal: Out of memory, malloc failed (tried to allocate 426523986 bytes)
error: failed to run repack
Run Code Online (Sandbox Code Playgroud)
我正在使用4GB RAM的64位双核Win7机器上运行Cygwin中的Git 1.7.5.1.该.git
目录目前略高于6.1GB.
我已经尝试过运行 …
当我运行git gc
或运行git repack
我的Git存储库时,它会在完成后输出"Total"行.这些数字是什么意思?
来自相当小的存储库的几个示例:
$ git gc
...
Total 576 (delta 315), reused 576 (delta 315)
$ git repack -afd --depth=250 --window=250
...
Total 576 (delta 334), reused 242 (delta 0)
Run Code Online (Sandbox Code Playgroud)
还有一个来自更大的存储库:
$ git gc
...
Total 347629 (delta 289610), reused 342219 (delta 285060)
...
Run Code Online (Sandbox Code Playgroud)
我可以猜出第一个"Total"数是什么:存储库中Git对象(如提交,树和文件)的数量.所有其他人实际上意味着什么?
我已经看了看git-gc(1)
和git-repack(1)
人的页面,仔细看他们的"又见" S,也和我尝试在谷歌搜索只生产不相关的结果.
如何使用svn export
,svn checkout
在Cygwin的命令等?
我是否需要安装任何其他功能?我使用的是版本2.738.
例如,我希望能够运行
svn export http://svn/trunk/Test/code /TESTEXPORT
Run Code Online (Sandbox Code Playgroud) 我想使用Git的耐心差异算法(如果你git diff
用--patience
参数调用你得到的算法)git add -p
.我怎样才能做到这一点?
背景:我正在使用一些XML文件,并且由于"未对齐"的进入/退出标记,git diff
正常算法会产生相当差的差异.如果我运行git diff --patience
,我会得到更多有用的差异,但没有明显的方法来使用这些差异git add -p
.
我提出了一种数据结构,它结合了链表的一些优点和固定大小数组的一些优点.这对我来说似乎非常明显,所以我希望有人能够想到它并将其命名.有谁知道这是什么叫:
拿一个小的固定大小的阵列.如果要放入数组中的元素数量大于数组的大小,请添加一个新数组以及旧方和新方之间的任何指针.
因此你有:
Static array
—————————————————————————
|1|2|3|4|5|6|7|8|9|a|b|c|
—————————————————————————
Linked list
———— ———— ———— ———— ————
|1|*->|2|*->|3|*->|4|*->|5|*->NULL
———— ———— ———— ———— ————
My thing:
———————————— ————————————
|1|2|3|4|5|*->|6|7|8|9|a|*->NULL
———————————— ————————————
Run Code Online (Sandbox Code Playgroud)
编辑:作为参考,该算法提供相当差的最坏情况添加/删除性能,并且平均情况不是更好.我的方案的一大优势是提高了读取操作的缓存性能.
编辑赏金:Antal SZ的答案是如此完整和精心研究,我想为他们提供赏金.显然Stack Overflow不让我接受答案,一旦我提供赏金,所以我将不得不等待(诚然,我有点滥用意图赏金系统,虽然这是为了奖励某人的优秀回答).当然,如果有人确实能够提供更好的答案,给他们更多的权力,他们肯定会获得赏金!
编辑重新命名:我对你称之为什么并不感兴趣,除非你这么称呼它,因为那是主题上的权威人士所称的.如果这是你想出的名字,我不感兴趣.我想要的是一个名字,我可以在教科书和谷歌中查找.(另外,这里有一个技巧:安塔尔的答案是什么,我一直在寻找.如果你的答案是没有"展开链接列表"没有.很充分的理由,这是完全错误的.)
目前bash需要大约2秒才能加载.我用-x
旗帜运行bash,我看到输出,似乎PATH在cygwin中被多次加载.有趣的是我在linux环境中使用相同的文件,但它工作正常,没有重载问题.以下可能导致问题吗?
if [ `uname -o` = "Cygwin" ]; then
....
fi
Run Code Online (Sandbox Code Playgroud) 在使用时git bisect
,可以运行git bisect skip
以将当前提交标记为不可构建/不可测试,以尝试让Git选择其他提交来进行测试.
Git如何决定哪个提交尝试git bisect skip
?试验表明它不仅仅是一个相邻的提交,但我无法解决这个模式.
编辑:我知道基本git bisect
是二进制搜索,但我很好奇git bisect skip
,这显然做了一些更复杂的事情.
实验表明,它不仅仅是选择相邻的提交; 下面创建了100个提交,编号为0-99,然后开始将它们一分为二.第一个提交git bisect
选择位于中间,但git bisect skip
之后的每一个似乎都或多或少地随机选择.
$ git init
Initialized empty Git repository in .git/
$ for (( i=0; i<100; i++ )); do echo $i > file; git add file; git commit -m $i >/dev/null; done # Create some dummy commits
$ git bisect start HEAD $(git rev-list --max-parents=0 HEAD) # HEAD is bad, root …
Run Code Online (Sandbox Code Playgroud) git ×6
cygwin ×3
git-gc ×2
algorithm ×1
bash ×1
debugging ×1
git-add ×1
git-bisect ×1
git-diff ×1
git-patch ×1
git-rerere ×1
git-svn ×1
inheritance ×1
merge ×1
python ×1
python-2.5 ×1
subclass ×1
svn ×1
tcl ×1
tk-toolkit ×1
x11 ×1