GitLab - 소스 이동 (SourceTree 사용)

 

 

 

기존에 사용 중인 GitLab 서버에서 새롭게 구축된 GitLab으로 소스를 이동시키려고 합니다. 이때 소스를 이동시키는 것뿐만 아니라 GitLab에서 Commit, Push, Branch 등의 작업들을 하면서 기존의 GitLab 서버에 기록되어 있는 히스토리(History)까지 전부 이동 시킬 수 있습니다. 이동시키는 방법은 많지만, 만약에 작성자처럼 소스트리(SourceTree)를 사용하고 있는 중이라면 아래 방법처럼 클릭 몇번으로 간단하게 이동시킬 수 있습니다.

 

아래처럼 기존 사용중이던 GitLab 경로와 새롭게 만들어져서 옮겨야 하는 GitLab 경로가 있다고 생각해보겠습니다.

 

  • (곧 없어질) 기존 GitLab 경로 : http://10.0.0.5:8099/joker/rank/rank-sdk
  • (이동시킬) 새로운 GitLab 경로 : http://10.0.0.100:8099/joker/rank/rank-sdk

 

포스팅에서 설명하는 방법을 적용하기 전에, 현재 상황은 기존에 직접 GitLab 서버를 구축하고 사용하던 도중에, 다른 GitLab 서버로 기존 코드과 기존 작업 히스토리들을 함께 이동시켜주어야 하는 상황입니다. 만약에, 작성자와는 다르게 소스트리를 사용하지 않고 있는 상황이라면 현재 포스팅에서 소개하는 방법이 아닌 다른 방법으로 옮겨야 합니다.

 

  1. (GitLab 페이지를 사용해서) 새로운 GitLab에 빈 프로젝트 생성
  2. (SourceTree를 사용해서) 기존 GitLab에서 새로운 GitLab으로 이동

 

1. (GitLab 페이지를 사용해서) 새로운 GitLab에 빈 프로젝트 생성

1. 프로젝트 생성

> "New Proejct" 클릭

 

2. 프로젝트 이름

> "rank-sdk" 작성 (=새로운 프로젝트 이름) 

> "Create Project" 클릭

 

3. 프로젝트 주소 복사

> "Clone" 클릭

> "Clone with SSH" 클릭

 

 

2. (SourceTree를 사용해서) 기존 GitLab에서 새로운 GitLab으로 이동

1. SourceTree에서 기존 사용 중인 프로젝트 열기

 

2. SourceTree에 새로운 GitLib 프로젝트 주소 추가

> [Settings] 버튼

> [Remotes] 탭

> (기존 GitLab 이름 변경) origin -> old_origin

> (새로운 GitLab 이름 추가) origin (이때, Path에는 앞의 "Clone with SSH"를 클릭해서 복사해둔 새로운 GitLab 주소를 붙여넣기한다.)

> [OK] 버튼

> [Push] 탭

※ 기존 GitLab 이름을 origin에서 old_origin으로 변경하는 이유는 나중에 기존의 GitLab에 다시 접속할 수는 상황이 발생할 수도 있기 때문에 백업용으로 적어두는 것입니다. 만약에, 새로운 GitLab으로 연결이 잘 된 후 기존 GitLab에 접속할 일이 없다면 삭제(Remove)해도 상관없습니다.

 

3. 새로운 GitLab에 소스 임포트

> "Push to repository" : origin

> develop, master 체크

> OK

※ delveop과 master 모두 체크하는 이유는 기존 gitlab에서 두 브런치의 코드 모두 이동시킴으로써, 새로운 GitLab 서버에는 최신코드를 유지시켜줄 수 있기 때문입니다.

 

4. 새로운 GitLab에 추가된 것 확인