2017-01-31 2 views
-1

이 특정 상황에서으로 을 (를) SVN에서 GIT로 마이그레이션하는 방법에 관한 다음과 같은 의심이 있습니다.이 간단한 상황에서 SVN에서 GIT로이 프로젝트를 어떻게 마이그레이션 할 수 있습니까?

지금까지 우리는 버전 제어 시스템으로 SVN을 사용하고 있습니다. 이제 GIT으로 전환 중입니다.

지금이 순간에 난 단지 GIT 지금 SVN을 사용하여 처리됩니다 전까지 하나의 인텔리에 넣어해야합니다. 또 다른 중요한 세부 사항은이 프로젝트가 새로운 프로젝트이기 때문에 SVN에 대한 역사가 없다는 것입니다. 그리고 이번에는 첫 번째 커밋 만 있으므로 SVN에서 GIT까지 내역을 마이그레이션하지 않아야합니다.

그래서 기본적으로 내 PC에는 현재 SVN 리포지토리에 연결된 Java 프로젝트가 있습니다. 나는 위에 넣어야한다 GIT 단지 현재 버전.

나는 단지 내 로컬 프로젝트에 가서 같은 것을 수행 할 수 있습니다

cd existing-project-on-my-local-PC 
git init 
git add --all 
git commit -m "Initial Commit" 
git remote add origin https://[email protected]/bitbucket/scm/my-project/myproject.git 
git push -u origin master 

내 프로젝트는 기존의 SVN 정보를 포함하는 을 .svn 폴더를 포함합니다. 어떻게 그것을 제외시킬 수 있습니까?

답변

1

거의 그렇게 할 수 있습니다.

git add --all 대신 git add .을 사용해야합니다. 전자는 현재 디렉토리의 모든 항목을 추가하기 때문에, 후자는 이미 추적 한 파일 만 업데이트하므로. .svn 디렉토리에 관한

, 하나 단순히 삭제, 당신은 더 이상 필요가 없습니다 아마도 같은 시간에 SVN 힘내에 의해 제어되는 worktree을 가질 수있는 가장 좋은 생각이 아니다. 또는 Gits ignore 기능을 사용하여 .svn 폴더를 제외 할 수 있습니다. 이 제외 사항을 프로젝트와 함께 커밋하고 싶다면 /.svn/이라는 내용의 .gitignore 파일을 만듭니다 (.gitignore 파일과 같은 레벨의 폴더 .svn 및 그 안에있는 모든 내용을 무시하거나 이후에 .git/info/exclude에 추가). git init은 로컬 Git 저장소에서만이를 무시합니다. 또는 사용자 레벨에있는 무시 파일에 추가하여 모든 로컬 Git 저장소에있는 .svn 폴더를 무시할 수도 있습니다. 그러나 이것이 필요하지는 않습니다. 무시 기능에 대한 자세한 내용은 https://git-scm.com/docs/gitignore에서 확인할 수 있습니다.

관련 문제