버전 관리 시스템은 일반적으로이 기능을 "다른 사람을 비난"이라고합니다. 각 줄에 대해 누가 수정했는지와 언제가 표시됩니다.
pdate : 수천 번의 편집 기능이있는 기사에 대한 솔루션을 찾고 있습니다 (즉, 버전 기록을 탐색하고 각 기사를 확인하는 것은 실용적이지 않습니다).
기사에 대한 View History
링크를 클릭하면 기사 변경 사항, 날짜 및 날짜를 확인할 수 있습니다. 변경 설명에 대한 간단한 요약도 표시됩니다. 그런 다음 Compare selected version
버튼을 클릭하여 텍스트를 비교할 수 있습니다.
불행히도, 나는 특정 줄이나 문장 또는 단락을 누가 변경했는지 직접 볼 수있는 Blame 기능을 알지 못합니다.
편집 : 당신은 Greg Hewill 's site 을 확인하고 싶을 수도 있습니다. 그는 (명백히) 그러한 비난 기능을 수행하고 있습니다.
Wikipedia에서 개정판을 검색 할 수있는 http://wikipedia.ramselehof.de/wikiblame.php?lang=en 을 사용하십시오.
모든 위키 백과 기사의 오른쪽 상단에있는 "View History"
를 클릭하면됩니다. 거기에 기사의 개정 목록이 있습니다. 각 사용자가 구체적으로 커밋하려면 각 개정판 옆의 "cur"
를 클릭하면 위키피디아가 변경된 사항을 강조 표시합니다.
이를 수행하는 한 가지 방법은 기사 기록을 내 보낸 다음 _git blame
_와 같은 로컬 도구를 사용하여 개정을 처리하는 것입니다. 이것은 스크립트를 사용하여 수행 할 수 있습니다.
기사 기록을 내보내려면 Special:Export
, 구체적으로 https://en.wikipedia.org/w/index.php?title=Special:Export&history=1&action=submit&pages=Blinkenlights
을 사용하십시오.
비난을 생성하려면 먼저 임시 git 저장소 (Python 3에 표시)에 개정을 추가하십시오.
_import tempfile
import subprocess
with tempfile.TemporaryDirectory() as repo:
os.chdir(repo.name)
subprocess.check_call(['git', 'init'])
_
그런 다음 내 보낸 히스토리 XML을 다운로드하여 _lxml.etree
_와 같은 것으로 구문 분석하고 개정판 (xpath _//revision
_)을 반복하십시오. 각 개정에 대해 텍스트를 파일에 작성하고 (예 : _article.wiki
_) 작성자를 읽고 실행하십시오.
_subprocess.check_call(['git', 'commit', '-a', '-m', 'blah', '--author=' + str(author)])
_
모든 개정이 저장소에 추가 된 후 _git blame article.wiki
_를 실행하여 각 행의 작성자를보십시오.
참고 : _Special:Export
_는 내 보낸 개정 수를 제한 할 수 있으므로 기록이 긴 페이지에서는 XML을 여러 번 가져와야 할 수 있습니다.