git команд в python, не в состоянии распознать действительные git - PullRequest
0 голосов
/ 22 февраля 2020

Я делаю простой git командный тест, который отлично работает с терминала bash.

$ pwd 
#/mnt/some_dir
$ git clone git@github.com:my-git/my-repo.git 
$ cd my-repo
$ git status

Теперь я выполняю то же самое из скрипта python (часть того же репо my-repo. git), ниже приведен контент (после git клон из bash)

import os

print os.getcwd()
os.chdir('my-repo')
print os.getcwd()

os.system('git status')

получение журнала ниже с git сбой $ python / mnt / some_dir / my-repo / python .py

 /mnt/some_dir
 /mnt/some_dir/my-repo
 fatal: Not a git repository: /mnt/some_dir

Мой вопрос заключается в том, почему статус git не выполняется внутри git репо, даже после того, как я выполняю изменение в предыдущем шаге?

Я даже пытался с подпроцессом, но получаю ту же ошибку

output = subprocess.check_output(['git', 'status'], cwd='/mnt/some_dir/my-repo')
fatal: Not a git repository: /mnt/some_dir
...