2016-07-20 5 views
0

나는 log.message의 특정 문자열에 대한 로그를 검색하고 그 특정 문자열을 가지고있는 모든 리비전을 채우는 스크립트 작업을하고있다. 그러나 이전 버전을 문자열의 첫 번째 인스턴스가있는 버전으로 가져 오려고합니다. 나는 이것을 할 수있는 방법을 생각해 낼 수 없다.pysvn 이전 버전을 얻는 것

나는 현재이 있습니다

나는 현재이 있습니다

log_messages = client.log(work_path, limit=0) 
usr_str = raw_input("Please enter the hook string:") 

rev_list = [] 


tracking = True 

for log in log_messages: 

    if usr_str in log.message: 

     timestamp = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(log.date)) 
     print '[%s]\t%s\t%s\n %s\n' % (log.revision.number, timestamp, 
       log.author, log.message) 

     rev_num = log.revision.number 
     revision = client.export(work_path, 
            dest_path+str(rev_num), 
            recurse=False, 
            revision=pysvn.Revision(pysvn.opt_revision_kind.number, rev_num)) 
+0

무엇을 시도하셨습니까? – litelite

+0

본인은 현재 –

답변

0

당신이 이전 회전과 함께 무엇을 할 것 인에 따라 두 가지 대답이 있습니다.

만약 diff가 수행되고 싶다면 문자열이 rev N에 있음을 알았 으면 N과 N-1을 비교할 수 있습니다.

문자열이있는 파일 앞의 변경 사항을 알고 싶다면 log()를 다시 호출하여 파일의 경로를 제공하고 N-1의 시작 rev와 0의 끝 rev를 1로 제한 할 수 있습니다 반환 된 로그는 사용자가 수행 한 로그입니다. 물론 파일이 N에 추가 된 경우에는 더 이상 볼 필요가 없습니다.

Barry Scott author pysvn.

+0

입니다. 질문에 답변 한 경우 동의하십시오. –