본문 바로가기

프로그래밍/git

[git-tfs] TFS->git 소스 마이그레이션 방법

git-tfs 마이그레이션

최근들어 git으로 소스형상관리를 많이들 사용하고 있다.

 

이번 포스팅에서는 기존에 다른 형상관리 도구(TFS)를 사용하던 중, git으로 소스를 이관하고 싶을 때 'git-tfs' 유틸을 활용하여 소스변경이력과 함께 git으로 이관하는 방법에 대해 알아보도록 한다.

 

 

마이그레이션 전, 해당 환경에 git이 설치 되어있어야한다.

http://git-scm.com/download/win

 

Git - Downloading Package

Downloading Git Now What? Now that you have downloaded Git, it's time to start using it.

git-scm.com

 

 

TFS -> git 마이그레이션 방법

MS에서 제공해주는 TFS(Team Foundation Server) 에서 git으로 소스변경이력과 함께 소스를 이관하기 위해서는

git-tfs 유틸이 필요하다.

 

해당 유틸은 아래, github에 올라와있다.

https://github.com/git-tfs/git-tfs

 

GitHub - git-tfs/git-tfs: A Git/TFS bridge, similar to git-svn

A Git/TFS bridge, similar to git-svn. Contribute to git-tfs/git-tfs development by creating an account on GitHub.

github.com

 

해당 링크를 타고 github사이트에서 스크롤로 내리다 보면 git-tfs tool을 다운로드 할 수 있다.

git-tfs 유틸 다운로드

 

유틸을 다운로드 한 후, 압축을 아래와 같이 풀어준다.

유틸 압축 해제 경로

git-tfs 압축해제 경로 :  D:\git-test\git-tfs-tool\GitTfs-0.32.0

 

1. 커맨드창을 켠 후, "git-tfs.exe"를 찾아주기 위한 환경변수 경로 설정

set PATH=%PATH%;D:\git-test\git-tfs-tool\GitTfs-0.32.0

 

2. TFS에 올라가있는 소스를 아래 명령어를 통해 git으로 마이그레이션

git-tfs clone [TFS 소스 경로] [TFS소스명] [Clone을 수행할 Local PC 경로]

ex)

[TFS 소스 경로] : http://xxx.xxx.xx.com/tfs/SourceCollection/  -> TFS 소스 위치

[TFS소스명] : $/Sources/Project

[Clone을 수행할 Local PC 경로] : "D:\git-test\clone"

 

중요 : Clone을 수행할 Local PC 경로(D:\git-test\clone) 은 git init 되어야함.

 

위 명령어를 잘 실행하면, 아래와 같이 Commit 된 List가 커맨드 창에서 변환 작업을 진행한다.

마이그레이션 되고 있는 커맨드 창

 

위 명령어를 수행하였는데, 정상적으로 다음 Step으로 가지 않는다면 아래 내용을 확인 하길 바란다.

1. tfs->git으로 마이그레이션을 진행 할 로컬 PC 경로에 .git 폴더가 있는지 확인

2. git의 config 정보가 등록 되어있는지 확인

git config --global user.name "나의 닉네임"
git config --global user.email "나의 Email"

 

3. 마이그레이션 완료된 로컬저장소를 원격저장소(github or gitlab or bitbucket 등)에 Push

커맨드 창을 켜고, 로컬저장소(.git이 포함된 폴더)로 이동 후, 원격 저장소 등록

git remote add origin https://github.com/Project/Sample.git
git push -u origin HEAD:master

Push 커맨드 창

 

 

마이그레이션 후의 이력 사항을 가져오려면 아래와 같이 하면 된다.

 

1. 커맨드창을 켠 후, "git-tfs.exe"를 찾아주기 위한 환경변수 경로 설정

set PATH=%PATH%;D:\git-test\git-tfs-tool\GitTfs-0.32.0

 

2. .git이 존재하는 로컬 저장소 경로로 이동 후 pull 명령어 수행(D:\git-test\clone)

git-tfs pull

위 명령어를 수행하면, 마이그레이션 후 변경된 History만 가져온다.

제 블로그의 내용이 도움이 되셨나요?

여러분의 공감댓글이 큰 힘이됩니다 :)

▼▼▼▼▼▼▼▼▼▼▼

'프로그래밍 > git' 카테고리의 다른 글

[Bamboo] 자동 빌드 정리  (0) 2021.07.31
[git] git 설치  (0) 2021.07.25