いくつかのターゲット(Windows)コンピュータにファイルをデプロイするために、必要なパラメータを使用してフィードできるPythonモジュールを作成したかったのです。 モジュールは、指定されたrepoが出力パスに存在するかどうかを確認する必要があります。GitPython:リモートからプル/チェックアウトしてローカルの変更を破棄します
A)が存在しない場合:最新の
リモートBからコミットクローン)が存在する場合:その時(最新のリモート
から道をコミット引く、すべてのローカルの変更を破棄少なくともこれは私のために働いた)は、ローカルのターゲットフォルダを削除し、それを再作成し、すべてを再びクローンすることです。
だけ空のディレクトリのために働くことを私のコード、:すべてのローカル変更をレポが存在し、あなたが破棄する場合
stderr: 'fatal: remote origin already exists.'
import git, os, shutil
#outputfolder there?
if not os.path.exists(MY_outputfolder):
os.makedirs(MY_outputfolder)
repowrk = git.Repo.init(MY_outputfolder)
wrkr = repowrk.create_remote('origin',MY_REMOTE_URL)
wrkr.fetch()
wrkr.pull(wrkr.refs[0].remote_head)
print("---- DONE ----")
'repo.remotes.origin.pull()' == 'git pull origin master'? –