2011-04-08 4 views
32

새 PC에서 개발 환경을 설정했으며 Fabric에 이상한 오류가있는 것 같습니다. 'cd'컨텍스트 관리자는 현재 디렉토리를 변경하지 않으므로 많은 명령이 작동하지 않습니다. 내가 테스트를 작성하고 그것은 나에게 내가 얻을 것으로 예상하지 않은 결과를 보여 주었다 : 내가 생각Fabric의 CD 컨텍스트 관리자가 작동하지 않습니다.

[localhost] local: pwd 
/home/pioneer/workspace/myproject 

하지만 그 대신 /home/pioneer/workspace/myproject의이 있어야 /home/pioneer/workspace/myproject/src : 여기

from __future__ import with_statement 
from fabric.api import local, run, cd 

def xxx(): 
    with cd("src"): 
     local("pwd") 

fab xxx를 실행 한 후 결과입니다을 .

답변

56

cd (원격) 대신 lcd (로컬의 경우 l)을 찾고 있습니다.

+0

흠 ... 정말로, 그건 내 잘못입니다. 나는 이것을 간과했습니다. 그러나 이상하게도 새로운 PC로 옮길 때까지는 "cd"로 잘 작동했습니다. –

+1

문제점을 발견했습니다. 이것은 이전에 가지고 있던 Fabric 0.9와 현재 1.x 사이의 비 호환성 때문이었습니다. –

관련 문제