2016-08-05 3 views
2

私はいくつかのライブラリを使用してPythonを使って大きなリポジトリをクローンできるようにしたいと思いますが、重要なことに、クローンの進行状況を確認したいと思っています。私はpygit2とGitPythonを試しましたが、彼らはその進歩を示さないようです。別の方法がありますか?どのように私はpythonでリポジトリを複製し、クローンプロセスの進捗状況を得ることができますか?

+0

あなたは進行状況を表示するにはどうすればよいですか? GUIまたはstdoutで? –

+0

http://stackoverflow.com/questions/23155452/read-git-clones-output-in-real-time – DavidN

+0

@Robᵩ、私はCLIのgitコマンドがあなたに進行状況を示す通常の方法を考えていました。つかむオブジェクト11/27 ... – Jono

答えて

2

RemoteProgressGitPythonから使用できます。ここでは、粗例です:

import git 

class Progress(git.remote.RemoteProgress): 
    def update(self, op_code, cur_count, max_count=None, message=''): 
     print 'update(%s, %s, %s, %s)'%(op_code, cur_count, max_count, message) 

repo = git.Repo.clone_from(
    'https://github.com/gitpython-developers/GitPython', 
    './git-python', 
    progress=Progress()) 

それとももう少し洗練されたメッセージ・フォーマットのために、このupdate()機能を使用します。

def update(self, op_code, cur_count, max_count=None, message=''): 
     print self._cur_line 
関連する問題