파일을 어떻게 이동합니까?


219

SourceForge SVN 저장소에 대해 TortoiseSVN을 사용하고 있습니다. 개정 내역을 유지하기 위해 한 폴더에서 다른 폴더로 파일을 이동하고 싶습니다. 이게 가능해? 그렇다면 어떻게합니까?

(현재 내 전략은 파일을 새 폴더에 복사하여 체크인 한 다음 현재 폴더에서 파일을 삭제하는 것입니다.)

답변:


95

Subversion은 파일 이동을 기본적으로 지원합니다.

svn move SOURCE DESTINATION

자세한 내용은 온라인 도움말 (svn help move)을 참조하십시오.


또는 다른 말로 표현 : svn move <current path/filename> <destination path/filename>
Joe

313

섹션 5.14.2를 확인하십시오 . TortoiseSVN 도움말의 파일 및 폴더 이동 (또는 도움말 색인에서 "이동"확인). 오른쪽 드래그를 통해 이동합니다. 또한 부모 폴더에서 커밋하여 "하나"로 수정해야한다고 언급합니다. 이것은 작업 사본에서 변경을 수행하는 데 효과적입니다.

(다음 이미지의 SVN 항목은 대상 폴더가 이미 리포지토리에 추가 된 경우에만 표시됩니다.)

거북이 이동 메뉴

Repo Browser (섹션 5.23. 도움말 의 Repository Browser) 를 통해 이동할 수도 있습니다 .


모든 파일을 강조 표시하고 오른쪽으로 누를 때 일반 Windows 탐색기 메뉴가 나타납니다. "이동"을 선택할 수는 있지만 SVN 옵션이 아니므로 아무 일도 일어나지 않았습니다. 수정 사항이 있는지 확인한 결과 300 파일이 삭제되었고 300 버전이 아닌 것으로 나타났습니다. 제대로 작동하지 않는 것 같습니다. 이것이 작동하는 방식인지 아닌지 알지 못하고 커밋하기를 두려워합니다.
Joe Phillips

48
방금 새 디렉토리를 추가 / 커밋하지 않았기 때문에 아마 작동하지 않는다는 것을 깨달았습니다
Joe Phillips

나는 이것이 몇 년 후인 것을 알고 있지만 Joe의 의견은 중요합니다. 나도 이것으로 고투했다-나는 대답에서 그 작은 메모를 간과했다. 대상 폴더는 SVN 제어하에 있어야합니다. 그렇지 않으면 작동하지 않습니다. 고맙게도 SVN은 빈 폴더를 추가 할 수 있습니다. SVN 컨트롤 아래에 폴더를 배치하면 오른쪽 마우스 드래그가 위에서 설명한대로 작동합니다. 그렇지 않으면 일반 Windows "여기 복사 / 여기 이동 / 취소"메뉴가 나타납니다 (예 : SVN 선택 사항이 누락 됨).
ripvlan

이것은 완벽했다. 한 번에 1,500 개가 넘는 파일을 이동하는 데 문제가있었습니다. 한 번에 한 디렉토리 씩 이동하면이 문제가 사라지는 것처럼 보였습니다.
Michael Murphy

80

TortoiseSVN을 사용하면 파일을 디스크로 옮깁니다.

변경 사항을 커밋 할 때 누락 된 파일과 새 파일을 선택 하고 오른쪽 클릭 메뉴에서 " 수리 이동 "을 선택 합니다.

여기에 이미지 설명을 입력하십시오

즉, IDE에서 라운드 파일을 이동하고 기록을 잃지 않고 리팩토링 도구를 사용할 수 있습니다.


3
이것이 파일을 지금 옮기는 가장 좋은 방법입니다. 하나의 경고; 커밋 사이에 한 번에 20 개 미만의 파일 만 수행합니다. 그렇지 않으면 서로 관련된 파일을 찾는 데 시간이 많이 걸릴 수 있습니다.
DarrenMB

@DarrenMB가 맞습니다 .Android 프로젝트를 Eclipse에서 Android Studio로 마이그레이션하려고합니다. 모든 파일을 이동해야합니다. 이 접근법은 내가 여기서 사용하고 싶은 것이 아닙니다.
Bondax

@Bondax 예, 전체 프로젝트를 마이그레이션하려면 SVN 내에서 이동하는 것이 좋습니다. 프로젝트 중에 대부분의 개발자가 수행 한 대부분의 파일 이동에 더 좋은 방법이라는 것을 알았습니다.
Keith

1
거북이 SVN 1.9.4를 사용하여 Repair Move도 없습니다.
Mark Patterson

@ Mark Patterson : 옵션이 표시되며 1.9.4 (TortoiseSVN 1.9.4, 빌드 27285 및 Subversion 1.9.4, -release)에도 있습니다. 나는 당신의 문제가 버전과 관련이 있다고 생각하지 않습니다 ...
여기이

37

TortoiseSVN에서 어딘가를 마우스 오른쪽 단추로 클릭하고 TortoiseSVN> Repo Browser로 이동하여 저장소를여십시오.

그런 다음 한 폴더에서 원하는 위치로 파일을 끌어다 놓기 만하면됩니다. 커밋 메시지를 추가하라는 메시지가 표시되고 기본값은 "원격으로 파일 / 폴더 이동"으로 설정됩니다.


22

TortoiseSVN 사용 마우스 오른쪽 버튼을 클릭하고 폴더를 한 위치에서 다른 위치로 드래그하십시오. 마우스 오른쪽 버튼을 클릭하면 "SVN Move Version File"옵션이 있습니다. 그러나 SVN은 "팬시"를 수행하지 않지만 이전 위치에서 파일을 삭제하고 새 위치에 추가합니다.


18

TortoiseSVN 클라이언트의 경우 :

  1. 이동할 파일을 선택하십시오.
  2. 파일을 마우스 오른쪽 버튼으로 클릭하고 이동하려는 폴더로 드래그하십시오.
  3. 폴더에서 드래그 앤 드롭을 해제하면 창이 나타납니다. "SVN 버전이 지정된 항목을 여기로 이동"을 클릭하십시오 .
  4. 위의 커밋 창 메시지 상자를 클릭하면 나타납니다. 메시지를 입력하고 제출하십시오.

이제 끝났습니다.


8

평소처럼 운영 체제 컨텍스트 메뉴를 통해 파일을 자른 다음 일반 붙여 넣기를 수행하는 대신 마우스 오른쪽 버튼을 클릭하여 컨텍스트 메뉴를 가져온 다음 TortoiseSVN -> Paste루트에서 커밋하여 이전 및 새 파일을 커밋에 포함시킵니다.


4

tortoisesvn의 svn 브라우저에서 한곳에서 다른 곳으로 드래그 할 수 있다고 생각합니다.


2

Tortoise를 사용하고 있으므로 LosTechies에서이 링크를 확인하십시오. 거의 정확히 당신이 찾고있는 것이어야합니다.

http://www.lostechies.com/blogs/joshua_lockwood/archive/2007/09/12/subversion-tip-of-the-day-moving-files.aspx


3
해당 링크가 끊어 질 수 있으므로 관련 정보를 답변에 복사 할 수 있습니다.
Cees Timmerman

3
... 그리고 그 연결이 끊어졌습니다. 요점과 사례.
Stuart.Sklinar

1

버전 1.5부터 시작하지 않으면 SVN은 이동 된 파일 / 폴더를 추적 할 수 있습니다. TortoiseSVN에서는 끌어서 놓기를 통해 파일을 이동할 수 있습니다.


1

거북이에 의해 "이름 바꾸기"라고도 할 수 있지만 svn move는 기본 svn 클라이언트의 명령입니다.


가장 간단하고 정확한 답변은 바로 그 것입니다! TortoiseSVN 이동 파일 사용은 마우스 오른쪽 버튼 클릭> 이름 바꾸기로 수행됩니다. 그게 다야.
RoeeK

1

TortoiseSVN을 사용하여 파일 전송 :

1 단계 : 이동할 파일을 선택하십시오. 마우스 오른쪽 버튼을 클릭하고 파일을 이동할 폴더로 드래그하십시오. 아래 지침에 따라 창이 나타납니다.

SVN 옵션

2 단계 : 위를 클릭하면 아래 언급과 같이 파일 커밋

SVN 커밋


0

리포지토리 브라우저를 통해 폴더를 이동하는 경우 마우스 오른쪽 버튼을 클릭하면 이동 옵션이 ​​없습니다. 유일한 방법은 드래그 앤 드롭입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.