Aptana sh.git.log зависает при запуске в IDE

[файл: foo.py]

#!/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')

Все просто виснет, такое бывает если запускаю, или отлаживаю файл. Когда я запускаю это в командной строке с помощью «python foo.py» или «./foo.py», сценарий завершается менее чем за секунду с точно таким же выводом из

sh.git.status()

Командная, но дополнительно с выводом из лога тоже.

Я пытался вникнуть в то, что может происходить в фоновом режиме с помощью sh и git, но по своей природе он невероятно «общий», потоко-счастливый и трудно следовать логическому следу.

Я использую Mac OS X Lion 10.7.5, Aptana Aptana Studio 3, сборка: 3.4.1.201306062137, Pydev 2.7.0.2013032300 Python 2.7.2


person seaders    schedule 23.06.2013    source источник


Ответы (1)


Это немного поздно, но команда журнала, вероятно, пытается просмотреть результаты и ожидает стандартного ввода, попробуйте следующее, чтобы отключить пейджер:

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