2013-06-23 60 views
1

[文件:foo.py]集锦sh.git.log挂

#!/usr/bin/env python 

import sh 
import os 

cwd = os.path.dirname(os.path.realpath(__file__)) 
print cwd 
sh.git.bake(_cwd=cwd) 
print sh.git.status() 
print sh.git.log('-n 1', '--pretty=%H') 

真正简单的代码位,但在IDE中,当它到达

sh.git.log('-n 1', '--pretty=%H') 

一切只是挂起,这发生在我运行或调试文件时。当我在与“蟒foo.py”或“./foo.py”脚本完成在不到一秒钟,从

sh.git.status() 

命令输出完全相同的,但附加地,命令行运行这与日志输出一起输出。

我试着钻研sh和git在背景中发生了什么,但是由于它非常自然,它非常“通用”,线程快乐且很难遵循逻辑线索。

我在 的Mac OS X狮子10.7.5, 集锦集锦工作室3,打造:3.4.1.201306062137, Pydev的2.7.0.2013032300 的Python 2.7.2

回答

0

这是一个有点晚,但日志命令可能试图页结果并等待stdin,请尝试以下操作以关闭寻呼机:

git = sh.git.bake("--no-pager", _cwd=cwd) 
git.log('-n 1', '--pretty=%H')