Whiteship's Note


[봄싹]기트 도입 실패 사례

모하니?/Coding : 2009.08.06 18:59


봄싹 스터디에서 Git라는 분산 VCS를 사용해 보기로 결정하고, 사전 조사를 거친다음, 간단한 사용법을 공유하고, 개발을 시작했다. 그러나 개발은 더뎠다. 얼마전 더디다 못해 거의 진척이 없다시피 하는 모습을 보고 Git에서 SVN으로 버전 관리 시스템을 바꿨다. 그리고 프로젝트의 데드라인도 설정했다. 그러자... 이게 왠일인가..


불과 2주 만에 총 9명의 개발자가 온/오프라인에서 뜨겁게 개발에 참여하고 있다. 현재 이 모습은 내가 봄싹 구글 그룹스를 처음 만들 때 상상하던 모습이다. 이대로만 간다면, 8월 29일 데드라인 안에 사이트 1차 개발을 마칠 수 있을 것 같다.

바뀐 요인은 딱 두 가지. 1. 데드라인 설정. 2. 개발자에게 보다 편리한 개발 환경으로 전환. 어쩌면 2번은 1번으로 인해 불가피 했을지도 모르겠다. 처음에는 느긋하게 기트에 적응해가자면서 개발을 하자고 생각했었다. 하지만 그것은 오산이었다.

기트를 사용하고 있지만, 기트를 사용하는 시나리오는 예전 SVN을 사용하던 때와 별반 다르지 않았다. 수시로 branching/merging을 하지 않을 꺼라면 굳이 Git를 사용할 필요가 없다는 것을 몸소 체험했으며, 중간 관리자를 거쳐야만 하는 대규모 개발도 아니기 때문에 한방에 서버로 바로 커밋/업데이트하는 SVN이 그립기도 했다. 또한 이클립스 툴 지원이 아직도 미약했다. 마지막으로 별도의 기트 서버를 운영하지 않고 GitHub를 이용했는데, 나중에는 사용자가 많아져서 계정 관리하는 것이 어려웠다. 이 부분은 아마도 봄싹에서 GitHub를 잘못이용한 것이 아닌가 하는 생각이 든다. 애초에 내 계정에 다른 개발자들의 공개키를 등록하는것이 아니라, 프로젝트에서 별도의 브랜치를 따다가 자기 계정에서 관리하는 형태로 프로젝트를 진행했어야 하는 듯 하다.


그래서 모두에게 익숙한 SVN으로 넘어왔다. 결국은 기트 도입이 실패했지만, 프로젝트는 실패하지 않았다. 어쩌면 그로인해 프로젝트 성공의 길로 한 걸음 더 다가간 것 같이 느껴진다. 비록 이번에는 기트 도입이 실패했지만, 다음에 적절한 상황이 오면 다시 시도해 볼 생각이다. 다음에는 기트허브에서 새로운 방식으로 개발을 진행하던지, 별도의 기트 서버 환경을 구축한 뒤에 해볼 생각이다. 그때가 되면 이클립스 툴도 조금은 진전이 있겠지...??

ps: 예상외로 메이븐 도입에 대해서는 다들 잘 수긍하는 편이었다. 처음부터 메이븐 리파지토리, 플러긴, 페이스, 골 등의 개념 설명을 한 적이 없고, 필요한 명령어만 몇개 알려드리고, pom.xml에 의존성 추가하는 것만 알려드렸다. 기트가 워낙 충격적이어서 그랬나...? 아무튼 메이븐은 기트에 비하면 도입이 쉬운편이었다. 봄싹에선 말이다.



top


기트(Git)와 SVN으로 동시에 버전 관리하기

Good Tools : 2009.04.27 14:14


기트에서는 SVN 정보를 버전관리에서 제외하고 SVN에서는 기트 정보를 버전관리에서 제외해줘야 합니다. 그래야 깔끔하겠죠. 기트로 버전 관리는 하는데 괜히 모든 폴더마다 .svn 폴더가 생기고 그 안에 또 여러 폴더와 파일들까지 딸려 온다면... 쫌~ 그르치요~!

기트에서 SVN 정보를 버전관리 대상에서 제외하는 방법은 간단합니다. 프로젝트 루트에 .gitignore 파일을 만들고 그 안에 .svn 과 .svn/* 을 추가해주시면 됩니다. 두 번째 것 만 등록해도 될런지 모르겠습니다.


반대로 SVN에서는 프로젝트 루트에 있는 .git 폴더와 .gitignore 파일만 ignore 시켜주면 됩니다. 이렇게 하면 이제부터 이클립스에서는 subversive 플러긴을 이용해서 SVN에 커밋&업데이트를 할 수 있고, 콘솔로는 기트를 이용하여 로컬에 commit을 하고 원격에 push, pull 하면서 두 개의 버전관리 시스템을 사용할 수 있겠습니다.

둘 중 하나는 뷰 전용으로 하고, 다른 것 하나를 주요 버전 관리 시스템으로 사용하면 좋을 것 같습니다. 예를 들어, SVN을 뷰 전용으로 사용하고 기트를 사용하여 실제 개발을 하면서 중간 중간 push할 때 마다 SVN에 같이 커밋해주는 식으로 사용하면 될 것 같습니다.

'Good Tools' 카테고리의 다른 글

오늘 하루 타일즈(Tiles)에 낚였나보다~  (2) 2009.05.01
스프링 MVC에서 타일즈 2 사용하기  (2) 2009.05.01
Tiles와 SiteMesh 차이  (0) 2009.05.01
Tiles VS SiteMesh  (2) 2009.05.01
Prototype VS JQuery 트랜드 비교  (2) 2009.04.28
기트(Git)와 SVN으로 동시에 버전 관리하기  (4) 2009.04.27
Github 맘에 드네~  (0) 2009.04.25
Github에 pull, push하기  (2) 2009.04.14
기트(git) config  (0) 2009.04.09
기트(git) 주요 명령어  (2) 2009.04.07
기트(Git) 주요 개념  (8) 2009.03.30
top


SVN 저장소 설정하기

Linux : 2008.09.01 10:02


1. SVN 저장소 만들기

svnadmin create 저장소이름

그럼 svn루트/repos/저장소이름 으로 폴더 생김.

2. SVN 저장소 설정

htpasswd -m svn-auth-file 아이디
이렇게 사용자 추가

vi /etc/svn-authoz-file
들어가서, 권한 설정.

[저장소이름:/]
whiteship = wr
* = r

이런식..

3. SVN 클라이언트에서 저장소에 접근하기.

사용자 삽입 이미지

끝~
top

TAG svn

Spring Reference 정리

Spring/Mission : 2007.03.09 15:38


사용자 삽입 이미지
현재 Chapter 3을 정리하고 있습니다. Reference 분량이 엄청나군요~ 500페이지..ㅠ.ㅠ

http://agilejava.googlecode.com/svn/  <= SVN URL
http://code.google.com/p/agilejava/  <= Project Home

사용자 삽입 이미지
위 주소의 svn repository에는 현재 정리 중인 Spring Reference 정리를 위해 사용중인 예제 코드. - Spring Study

테스트 주도 개발 1장~17장 까지 Money 예제 소스 코드 연습 한 것. - TDD

테스트 주도 개발 18장~20장 까지 xUnit 예제 소스 코드 연습 한 것. - xUnit

만들다 만 주소록. - addressbook & webAddressBook

Tdd 도우미 - TddHelper

랜덤 리스트 축출기 - RandomListSelecter

이런 것 들을 모아 놨습니다. 누구든지 anonymous로 checkout 받으실 수 있습니다.
top


Agile Java 소스코드(10장까지..)

Java : 2006.12.21 17:04


Agile Java 소스코드를 1장부터 7장까지 쳐봤습니다. 그동안 뜨문뜨문 보아 오던 터라 연결도 잘 안되고 언젠가 부터 귀찮아서 소스코드도 치지 않고 대강 읽기만 했는데 심기일전을 하기 위해서 시간을 들여서 쳐보았습니다.

오늘의 목표를 달성하고 나니 뿌듯합니다. 스샷으로라도 자랑을 해야겠습니다.
사용자 삽입 이미지

위 소스코드를 SVN에 올려두었습니다.

SVN 주소는 http://whiteship.googlecode.com/svn/ 이겁니다.

12월 21일 목요일 현재 8장까지 커밋 했습니다. 게을러져서 한동안 코딩을 안했었네요.ㅠ.ㅠ
12월 12일에 올린 글이니깐 무려 9일 동안이나 손을 안댔군요.

내친김에 9장까지 커밋 완료 :)

2007년 1월 1일 10장 커밋 완료. 에고.. 게을러져버렸군요. --;;

'Java' 카테고리의 다른 글

Generic과 다형성  (0) 2007.01.05
자바 검은 띠에 도전해 보시길~  (2) 2006.12.31
Hiding Method  (0) 2006.12.31
Overriding - covariant return type  (6) 2006.12.31
LinkedList vs ArrayList  (6) 2006.12.22
Agile Java 소스코드(10장까지..)  (8) 2006.12.21
Reflection  (0) 2006.12.19
... 가변인수(varargs)  (2) 2006.12.11
for each 구문 사용법  (0) 2006.12.11
JUnit Reloaded  (0) 2006.12.07
I/O Stream 구성  (0) 2006.12.07
top


Spring Framework 소스코드 SVN으로 다운 받기(불가능)

Spring/Mission : 2006.10.25 10:42


먼저 https://svn.sourceforge.net/svnroot/springframework 이 주소를 이클립스에서 svn 저장소에 추가 시켜 줍니다.

오픈소스들은 전부 이런식으로 소스코드를 다운 받을 수 있다고 합니다.

svn 저장소에 다음과 같이 주소가 추가 된 것을 확인 할 수 있습니다.


그리고 열어 봤더니...


대체 저 중에 뭘 다운 받아야 한단 말인지... 순간 당황했습니다.

역시 찍기 솜씨를 발휘하여.. 적당해 보이는 것을 클릭하고 체크아웃! 결과는 추후에.. 일단 해보는겁니다. ㅋ

.................................추가 부분........................

Looking for the Source Code?

The source code for the core Spring project is available through anonymous CVS at SourceForge's CVS Server.

  • Use CVS HEAD for the current Spring 2.x development stream.
  • Use the CVS branch named "mbranch-1-2" for the Spring 1.2.x maintenance stream.

Thesource code for Spring Web Flow, Spring Web Services, Spring-LDAP, andSpring-OSGi is available through anonymous SVN at SourceForge's Subversion Server.


아 ... 이런!!!!!!!!

Spring 소스코드는 cvs 저장소에서 다운이 가능하고 Spring Web Flow랑 Web Services, LDAP, OSGI가 svn 저장소에서 체크아웃 가능하군요.

제목 부터가 틀렸네요.
top


ubuntu에서 svn설치하기

Wiki : 2006.10.24 10:21


apt-cache search svn

이렇게 하면 svn 이라는 이름이 들어가는 패키지들이 보여집니다.

리스트를 쭉~ 보다 보면 여기에 subversioin이 보이는데..

그걸 설치해주면 됩니다. 설치는

apt-get install subversion

아래는 제가 엠파스 블러그에 정리해 두었던 apt 명령어 메뉴얼입니다.


top