Eclipse Subversion 프로젝트 연결 복원


100

Eclipse를 사용하여 개발중인 Subversion의 프로젝트가 있습니다. Eclipse 내부에서 svn 저장소에서 원래 체크 아웃을 수행했습니다. 몇 주 동안 모든 것이 잘 되었으나 알 수없는 이유로 Eclipse (특히 가니메데의 subclipse)는 더 이상 내 프로젝트를 svn 제어하에있는 것으로 인식하지 않습니다. 팀 컨텍스트 메뉴는 기본 "패치 적용"/ "이 프로젝트 공유"메뉴 옵션 만 표시합니다. 셸에서 svn 명령 줄 도구를 사용하여 프로젝트를 업데이트 할 수 있으므로 svn 자격 증명이 여전히 작동한다는 것을 알고 있습니다. 동일한 Eclipse 사본에서 Subversion의 다른 프로젝트는 여전히 작동합니다.

로컬 사본을 삭제하고 다시 확인할 수 있다는 것을 알고 있지만 문제가 무엇인지 이해하고 싶습니다. 증상을 가리기보다는 문제를 수정하십시오. Eclipse는 버전 제어를받는 프로젝트에 대한 지식을 어디에 저장합니까? 나는 .project파일과 .settings디렉토리를 보았지만 여전히 제대로 작동하는 프로젝트에서도 svn nature 또는 이와 유사한 것에 대한 명백한 언급을 볼 수 없었습니다.

답변:


124

SVN 공급자로 sublipse를 사용하는 경우 다음을 수행하는 것이 좋습니다.

팀-> 프로젝트 공유는 일반적으로 메타 데이터를 연결하기에 충분합니다.

(즉, .svn 파일이 아직 거기에 있다고 가정하면 명령 줄에서 작업 할 수있는 것처럼 보입니다).

이것이 왜 이런 일이 발생하는지에 대한 도움이되기를 바랍니다.


9
나는 같은 문제가 있지만이 대답은 나를 돕지 않습니다. Eclipse는 Subversion에서 새 프로젝트를 만들도록 제안합니다. 프로젝트를 다시 연결할 가능성이 없습니다.
migu 09.08.07

1
이 일을하는 확인 된 방법.
pestaa

1
이 답변에 감사 드리며 많은 시간을 절약했습니다. 이제 마침내 전체 작업 세트를 업데이트 할 수 있습니다.
세드릭 Meury

1
이것은 나를 위해 일했습니다 (Eclipse Indigo 64 비트 및 Subclipse 사용), 감사합니다! ".svn 파일이 여전히 존재한다고 가정"하는 주석이 정확하지 않을 수 있다는 점을 추가하고 싶었습니다. 즉, 내 프로젝트가 여전히 내 저장소와 연결되어 있지만 (TortoiseSVN이 확인 했듯이 ) 프로젝트 디렉토리에 .svn 디렉토리가 없다는 사실에 놀랐습니다 ! 나는 항상 모든 SVN 제어 디렉토리 에 그러한 디렉토리가 있다고 생각 했지만 이제는 그렇지 않습니다. 어쨌든 OP의 요점은 디렉토리가 여전히 구성 아래에 있으면 작동해야한다는 것입니다.
Rob Cranfill 2012

1
Subversive에서도 작업했습니다 ... 감사합니다!
jaibatrik

23

프로젝트를 다시 가져 오는 쉬운 방법을 찾았습니다.


1
당신은 사람이야 ... :) 난 단지 "패치 적용"옵션이 있고 그 그것을 해결 ... 왜 그 :) 생각하지 않았다
IncrediApp

그래, 다시 가져 오기는 쉬운 :-) 것 같다
user942640

"Apply Patch"메뉴 옵션도있었습니다. 다시 가져 오기가 작동했습니다. 이를 결정하는 구성 파일이 어딘가에 있어야합니다. 돌이켜 보면 변경된 내용을 볼 수 있도록 관련 구성 작업 영역과 프로젝트 파일 / 폴더를 백업했으면합니다. 이 솔루션을 읽는 다음 사람이 그렇게하고 변경된 내용을 공유하기를 바랍니다.
Pixelstix

7

Team-> Share Project (@Paul Whelan이 제공 한이 질문에 대한 답변에 따라)를하는 것만으로는 효과가 없었습니다. 프로젝트 공유 마법사는 프로젝트가 이미 SVN에없는 것처럼 작동했습니다 (내 프로젝트에 .svn 폴더가 있더라도).

Subversive 및 JavaHL 추가 기능 (도움말 | Eclipse 정보 | 설치 세부 정보 단추 | 설치된 소프트웨어 탭 | 제거 ...)을 제거한 다음 Subversive를 다시 설치하여 문제를 해결했습니다. Eclipse를 다시 시작한 후 메시지가 표시되면 JavaHL 커넥터가 아닌 SVNKit 커넥터를 설치하도록 선택했습니다.

그런 다음 Team-> Share Project ...를 다시 시도했을 때 Eclipse는 내 프로젝트가 이미 SVN에 있음을 올바르게 인식하고 성공적으로 연결을 복원했습니다.


프로젝트를 공유하는 이유는 무엇입니까? 공유 프로젝트는 로컬 프로젝트를 svn 서버에 게시합니다. 로컬에 svn 컴퓨터로 이동하지 않는 것이 있으면 문제가 발생할 수 있습니다. 그가 원하는 것은 연결을 다시 설정하는 것입니다. 새로운 체크 아웃을 할 것이다, 결국 파괴 대신하여 Subclipse를 설치
JBoy

4

부록 : 회사 VPN 외부에서 Eclipse를 시작할 때 내 문제가 VPN 내부의 svn 저장소에 연결된 작업 공간의 프로젝트와 함께 나타납니다. 다행히 Eclipse svn 플러그인을 subversive에서 subclipse로 전환하면 문제가 해결되었습니다.

이안


3

이클립스에서 프로젝트를 닫고 다시 열어 문제를 해결했습니다. 내 작업 공간의 모든 프로젝트에 대한 모든 by SVN 링크가 돌아 왔습니다.


1
닫기 및 다시 열기 프로젝트를 시도했지만 이것이 작동하지 않았습니다.
Epu

2

나는 같은 문제가 있었고이 포럼은 올바른 답을 찾는 데 도움이되었습니다.

내 이전 프로젝트는 subclipse를 사용하여 구성되었습니다. 새로운 일식은 정복했습니다.

subclipse를 설치하면 팀에서 svn 옵션을 다시 얻을 수 있습니다!

다른 사람에게 도움이되기를 바랍니다.

문안 인사

안슈 프라 텍


kepler에 subclipse를 설치할 수 없습니다. 어떤 해결책?
Vivek

1

당신이 어떤 플랫폼에 있는지 모르면 당신의 문제가 내 것과 비슷한 지 모르겠습니다. 그러나 최근에 (실제로는 서로 다른 두 플랫폼에서!) Subversive (또는 Eclipse 자체, 명확하지 않음) 업데이트로 인해 커넥터가 더 이상로드되지 않는 문제가 발생했습니다. 커넥터없이 Subversive는 프로젝트에 연결할 수 없습니다. 하지만 이클립스는 프로젝트에서 당신을 잠그지 않고 SVN 관련 기능을 제거 할뿐입니다.

Eclipse의 다양한 오류 (class-not-found 예외 등)의 로그인 오류보기를보고 Subversive 구성 요소와 관련된 행이 있는지 확인하십시오. 안타깝게도 솔루션을 추천 할 수는 없습니다. Mac OSX 플랫폼에서는 Subversive 핵심 요소와 커넥터를 다시 설치하는 것으로 충분했습니다. 내 Linux 컴퓨터에서 (아마도 OS 업그레이드로 인해) Eclipse를 완전히 다시 설치해야합니다. 이클립스를 완전히 조사하기에는 너무 많은 노력이 축적 되었기 때문입니다.


1

Subversive가 포함 된 Juno 릴리스에서 다음을 수행했습니다.

  • 파일 / 가져 오기는 가져 오기 팝업을 표시합니다.
  • 거기에서 일반 / 기존 프로젝트를 작업 공간으로 선택하십시오.
  • 다음 창에서 루트 디렉터리를 선택합니다. 그러면 모든 하위 디렉토리가 표시됩니다. 기본적으로 모두 선택됩니다.
  • 원하지 않는 항목을 선택 취소하십시오.

그런 다음 기존 디렉토리를 "가져올"것이며,이 디렉토리는 이미 작업 공간 디렉토리 내에있는 제자리에서 사용할 수 있습니다.


0

내 경우에도 .svn dirs가 있었지만 내 프로젝트는 svn 작업을 지원하지 않았습니다.

약간의 찌르기 후에 파괴적인 플러그인이 강제 종료 일식 후에 사라 졌다는 것이 밝혀졌습니다.

해결책은 파괴적을 (재) 설치하는 것이었고 이제 모든 것이 다시 정상입니다.

건배 v.

업데이트 : 플러그인이 설치되지 않은 새 버전으로 이클립스를 전환했는데, 이것이 바로 처음부터 설치해야하는 이유입니다.


0

이것은 나를 위해 일했습니다 : 오른쪽 클릭-> TortoiseSVN-> 설정-> 아이콘 오버레이 속성, 상태 캐시로 선택 . 확인, 페이지 새로 고침을 클릭합니다.


0

이 문제는 안정적으로 재현 할 수 있습니다. POM 자체가 포함 된 폴더가 아니라 상위 디렉토리 (예 : "trunk")에서 "Check out as Maven Project…"를 실행하여 특정 Maven 프로젝트를 체크 아웃 할 때 발생합니다. 이 경우 Subclipse는 불만없이 프로젝트를 체크 아웃하여 maven.1424425443350. 이 디렉토리 안에 Maven 아티팩트의 이름으로 하위 디렉토리가 생성됩니다. 이것은 Subclipse와 Subversion을 혼동합니다. 우리가 본 것처럼 Subclipse는 프로젝트가 버전 제어하에 있다는 것을 즉시 잊고 디렉토리 svn status의 명령 줄에서 호출 maven.1424425443350하면 디렉토리가 버전 제어하에 있지만 모든 버전 제어 파일이 없습니다.

이로 인해 Subsclipse가 SVN 연결을 잊은 경우 다른 답변에 제시된 해결 방법은 작동하지 않습니다. 대신 유일한 해결책은 프로젝트를 삭제하고 다시 체크 아웃하는 것입니다. 이번에는 체크 아웃이 상위 레벨 디렉토리가 아닌 POM이 포함 된 디렉토리에서 수행되는지 확인하십시오.

더 나은 전체 솔루션은 Subclipse가 POM을 포함하지 않는 디렉토리에서 "Check out as Maven Project…"실행을 거부하거나 Maven 프로젝트의 하위 디렉토리를 검색하여 어쨌든 그렇게하려는 경우를 더 잘 처리하는 것입니다.


0

SVN 저장소 버전 (1.8.x)과 동시에 두 개의 SVNKit 구현 (1.7.x 및 1.8.x)을 사용했습니다.

결과적으로 팀-> 프로젝트 공유 ...는 항상 커밋 메시지를 요청했습니다. 분명히 SVN 1.8.x와 호환되지 않는 SVNKit 1.7.x가 사용되었습니다.

SVNKit 1.7.x eclipse를 제거한 후 사용 가능한 올바른 SVNKit 버전 1.8.x를 사용했으며 모든 것이 예상대로 작동했습니다.

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