SVN을 Git으로 마이그레이션 할 때 svn.authorsfile로 설정하는 파일을 만드는 방법
만들고 싶은 것은 SVN과 Git의 사용자 정보 매핑 파일입니다.
ubversion 에서는 커밋한 사람 모두가 시스템상에 유저를 가지고 있어 그것이 커밋 정보로서 기록됩니다. 예를 들어 앞의 절의 샘플에서 말하면 schacon 이 그래서 blame 의 출력이나 git svn log 의 출력에 포함되어 있습니다. 이것을 Git 작성자 데이터로 성공적으로 매핑하려면 Subversion 사용자와 Git 작성자 간의 매핑이 필요합니다.
Git - Git으로 마이그레이션
만들고 싶은 것은 이런 파일schacon = Scott Chacon <[email protected]>
selse = Someo Nelse <[email protected]>
1.SVN 명령 설치
schacon = Scott Chacon <[email protected]>
selse = Someo Nelse <[email protected]>
사이트에서 Apache Subversion command line tools 다운로드
.bash_profile
에 PATH를 통해서 $ cat ~/.bash_profile
SVN_PATH="C:\任意のディレクトリ\Apache-Subversion-1.11.1\bin"
export PATH=$PHP_PATH:$PATH:$SVN_PATH
# .bash_profileを反映する
$ source ~/.bash_profile
# 確認する
$ svn --version
svn, version 1.11.1 (r1850623)
compiled Feb 1 2019, 13:37:32 on x86/x86_64-microsoft-windows6.1.7601
Copyright (C) 2019 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository access (RA) modules are available:
* ra_svn : Module for accessing a repository using the svn network protocol.
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
- using serf 1.3.9 (compiled with 1.3.9)
- handles 'http' scheme
- handles 'https' scheme
The following authentication credential caches are available:
* Wincrypt cache in C:\Users\ponsuke\AppData\Roaming\Subversion
2. 이력 정보를 가공하여
$ svn log --xml https://{SVNのパス} | grep "<author" | sort -u | perl -pe 's/<author>(.*?)<\/author>/$1 = $1 <$1\@example.jp>/g' > users.txt
먼저 로그를 XML 형식으로 출력합니다. 그 중에서 작성자를 찾아 중복을 생략하고 XML을 제거합니다 (조금 보면 알 수 있지만 이것은 grep, sort, 그리고 perl 같은 명령을 사용할 수있는 환경이 아니면 움직이지 않습니다). 이 출력을 users.txt로 리디렉션하고 Git 사용자 데이터를 작성합니다.
Git - Git으로 마이그레이션
3. 사용
# クローンの時に使ったり
$ git svn clone http://my-project.googlecode.com/svn/ --authors-file=users.txt --no-metadata -s my_project
# 設定ファイルに設定したりして使う
$ git config --global svn.authorsfile ~/.svnauthors
Reference
이 문제에 관하여(SVN을 Git으로 마이그레이션 할 때 svn.authorsfile로 설정하는 파일을 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ponsuke0531/items/0a672cb9d0b63924d4d7
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
# クローンの時に使ったり
$ git svn clone http://my-project.googlecode.com/svn/ --authors-file=users.txt --no-metadata -s my_project
# 設定ファイルに設定したりして使う
$ git config --global svn.authorsfile ~/.svnauthors
Reference
이 문제에 관하여(SVN을 Git으로 마이그레이션 할 때 svn.authorsfile로 설정하는 파일을 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ponsuke0531/items/0a672cb9d0b63924d4d7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)