'Subclipse'에 해당되는 글 8

  1. 2011.10.05 [SVN] RA layer file already exists
  2. 2011.10.05 [SVN] Your file or directory '...' is probably out-of-date
  3. 2011.10.05 [SVN] 커밋되지 않은 디렉토리
  4. 2011.08.03 svn:ignore에서 제외하기
  5. 2010.08.25 Subversion에서 Tag를 잘못 단 경우
  6. 2009.08.23 Eclipse Galileo + Subversive
  7. 2009.06.20 Show in Resource History - Subclipse
  8. 2009.02.04 Eclipse에서 Subversion 사용하기

[SVN] RA layer file already exists

commit -m "" D:/reps/nwds/prt.xxx/src.core/net/test/TestComponent.java
  Adding         D:/reps/nwds/prt.xxx/src.core/net/test/TestComponent.java
  RA layer file already exists
svn: Commit failed (details follow):
svn: File '/svn/TestRop/prt.xxx/trunk/src.core/net/test/TestComponent.java' already exists

- 환경 : NWDS + Subclipse_0.9.3.3
- 특정 파일이 커밋이 안됨.
- 해당 파일 Update 비활성화
- Revert를 해도 변동없음.


- 해당 패키지를 Update 하면 다음과 같은 에러 발생
update -r HEAD D:/reps/nwds/prt.xxx/src.core/net/test
  Obstructed update
svn: Failed to add file 'D:/reps/nwds/prt.xxx/src.core/net/test/TestComponent.java': object of the same name already exists

- 저장소에서 해당 파일을 찾아보면 이미 존재하고 있음.
저장소의 파일과 작업본의 파일을 비교해 보면 동일하다.
그래서 작업본에서 해당 파일을 삭제하고 Update 받아서 해결함.

- Cleanup 으로 하면 된다고도 함.

[SVN] Your file or directory '...' is probably out-of-date

commit -m "" D:/reps/nwds/prt.xxx/src.core/net/test/TestDAO.java
  Sending        D:/reps/nwds/prt.xxx/src.core/net/test/TestDAO.java
  Merge conflict during commit
svn: Commit failed (details follow):
svn: Your file or directory 'TestDAO.java' is probably out-of-date
svn:
The version resource does not correspond to the resource within the transaction.  Either the requested version resource is out of date (needs to be updated), or the requested version resource is newer than the transaction root (restart the commit).

- 환경 : NWDS + Subclipse_0.9.3.3
- 충돌 발생


- Update, Revert 하면 충돌파일 사라짐.

- 해당 파일은 수정전으로 돌아감.
수정한 내용을 붙여넣고 커밋했음.

[todo] 파일을 복사해 넣어도 되지 않았을까?

[SVN] 커밋되지 않은 디렉토리

/dist/PORTAL-INF/jsp/xxx/ 에 있는 파일들에 대해 분명히 커밋했는데 다른 계정에서 Update를 해도 안들어옴.

xxx/ 에 대해서 버전 관리가 제대로 되지 않는거 같다.

저장소에 xxx/ 가 없다.
이클립스(NWDS)상에서 삭제가 되지도 않는다.
delete --force D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp/board
  D         D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp/board/excelDownload.jsp
  D         D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp/board/list.jsp
  D         D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp/board/view.jsp
  Unmergeable scheduling requested on an entry
svn: 'board' is not under version control

- 탐색기에서 삭제하고 다시 commit 한다.
commit -m "" D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp
  Adding         D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp/board
  Adding         D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp/board/view.jsp
  Adding         D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp/board/list.jsp
  Adding         D:/reps/nwds/prt.xxx/dist/PORTAL-INF/jsp/board/excelDownload.jsp
  Transmitting file data ...
  Committed revision 134.
board/ 가 추가되었다.
반드시 commit 된 리비전을 확인할 것!

svn:ignore에서 제외하기

todo=여기에 대한 정립을 하자. 결론은 .classpath를 잘 추가하면 된다. 그리고 .settings/도 올려야 함.
todo=svn사용시 제외 항목들(svn ignore)
target/
web-app/plugins/
web-app/WEB-INF/classes/    =todo

.classpath 파일을 svn:ignore에 포함시키면 안되는데 습관적으로 추가시켜 버렸다.
.classpath 파일을 형상관리하도록 다시 설정해야 함.

- Subclipse 기준
Team - Show Properties
svn:ignore 속성 변경후 commit   ([todo] 이걸 먼저 add to version control 처리를 해야 하나?)


그리고 나서 update, commit


Subversion에서 Tag를 잘못 단 경우

Subclipse에서 태그를 달았는데 trunk/ 가 생겼다.


URL을 변경하지 않고 그냥 달아서 발생했음.


Subclipse에서는 URL을 직접 적어야 한다.
http://1.2.3.4/rep/project/tags/R20100703A

Eclipse Galileo + Subversive

- Eclipse Galileo 살펴보기
Galileo 에 포함된 프로젝트 소개 : CDT, EMF, Equinox, GEF, GMF, JDT, Mylyn, PDT, TPTP, WTP 등
(Galileo 에 대한 내용은 아님)

- Subversive 설치
Team Provider만 설치하면 될듯 ([todo] 종속적인 플러그인은 어떻게 되나?)

Connector 만 설치하면 된다고도 함.
http://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/

- 다양한 레이아웃이 있다.
Subclipse에서는 볼수 없었던 부분이다. 처음 소스형상관리를 할때 많이 고민했던 부분이었다.

- 또 다른 점
Galileo에서 추가되었는지 잘 모르겠지만 Synchronize with Repository에 단축키가 할당되어 있다.
그동안 별도로 키를 바인딩하거나 다른 방법을 썼었는데, 이거 마음에 든다.

- Compare with Each Other
Subversive, Subclipse도 가능함.
Subversive에서는 각 리비전별로 비교가 가능함.

- 참고
[리뷰] SVN 플러그인 Subversive 설치 정리

Show in Resource History - Subclipse

- Team - Show in Resource History


- 리비전번호와 커밋된 일시, 커멘트를 볼 수 있다.
리비전번호를 선택하면 해당 리비전에 적용된 파일을 볼 수 있다.
파일을 클릭하면 해당 리비전의 파일을 보여준다.(로컬의 파일과 비교해 주면 좋을건데... Compare가 언제 가능한지 잘모르겠다.)

- Create Unified Diff 기능으로 변경된 내용을 볼 수 있다.

- 특정 리비전의 파일 내용을 볼 때 종종 이런 에러가 나온다.
Invalid filesystem revision number
svn: 없는 리비전 428 입니다.

Eclipse에서 Subversion 사용하기

Eclipse 3.3.2
Subclipse 1.0.0 (http://subclipse.tigris.org/update 에서 업데이트한다.)