您可以使用:
sys.stdin = open('/dev/tty')answer = raw_input('Commit anyway? [N/y] ')if answer.strip().lower().startswith('y'): ...
git commit电话
python .git/hooks/pre-commit:
% ps axu...unutbu 21801 0.0 0.1 6348 1520 pts/1 S+ 17:44 0:00 git commit -am line 5aunutbu 21802 0.1 0.2 5708 2944 pts/1 S+ 17:44 0:00 python .git/hooks/pre-commit
往里看
/proc/21802/fd(在此linux框上)显示了带有PID 21802的
pre-commit进程(进程)的文件描述符的状态:
/proc/21802/fd: lrwx------ 1 unutbu unutbu 64 2011-09-15 17:45 0 -> /dev/null lrwx------ 1 unutbu unutbu 64 2011-09-15 17:45 1 -> /dev/pts/1 lrwx------ 1 unutbu unutbu 64 2011-09-15 17:45 2 -> /dev/pts/1 lr-x------ 1 unutbu unutbu 64 2011-09-15 17:45 3 -> /dev/tty lr-x------ 1 unutbu unutbu 64 2011-09-15 17:45 5 -> /dev/null
因此,
pre-commit被
sys.stdin指向产生了
/dev/null。
sys.stdin =open('/dev/tty')重定向
sys.stdin到
raw_input可以读取的打开文件句柄。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)