티스토리 뷰
팀 개발
여러사람이 공동으로 성과물을 만들어 내는 것
팀 개발의 요점
성과물 관리, 과정 공유, 작업 자동화
성과물 관리
버전 관리 --> 버전 관리 시스템
Repository에는 체크아웃, 커밋, 업데이트 존재
버전 관리 시스템 중엔 머지모델, 락모델 존재
머지모델 : 동시작업 가능
락모델 : 로컬 카피를 변경하기 전에 미리 락을 얻어 편집, 커밋 후에 락을 해제하여 다음 사람 조작
트렁크, 브랜치, 태그
트렁크 : 원줄기(현재 메인 개발이 진행되는 branch, 최신 branch)에 해당하는 브랜치
브랜치 : '가지'라는 뜻, trunk와 별개로 개발을 진행하고 싶은 경우 trunk에서 branch를 만든다
태그 : 어떤 시점의 브랜치 상태를 스냅샷(SnapShot)처럼 찍어 두기 위한 표시
과정 공유
일감, 진행, 순서.. 등등을 공유하는 것을 말한다.
대표적 작업 관리 시스템으로는 Redmine이 있다. Redmine 사용법 참고
작업 자동화
일반적인 애플리케이션 개발에서는 개발자가 정해진 언어로 프로그래밍 하지만, 프로그래밍 해서 생성된 소스가 반드시 그대로 실행 할 수 있는 형식이라고는 말할 수가 없다. 외부 라이브러리가 있어야 하는 경우 등등 때문이다
그래서 실행하려면 컴파일 과 빌드 처리가 필요하다.
실행 파일이 만들어지면, 파일을 실행 환경으로 배포하는 릴리스 작업이 필요하다.
ex) 버전관리 시스템을 사용하는 경우에는 실행환경으로 릴리스한 프로그램 소스를 명확히 관리하기 위해 릴리스 버전 태그를 달아두고 싶어질 것이다. 이처럼 관리상 필요한 작업도 발생한다.
이런 작업을 통함(Integration) 이라고 한다.
이런 반복작업은 전문화 할게 아리나 루틴워크화 해야한다. 그렇지 않을 경우 전담자가 없을 때 작업결과의 품질에 대한 확신이 부족하고 더불어 작업시간도 오래 걸린다.
대표적 작업 자동화 시스템으로는 Jenkins가 있다. Jenkins 참고
협업시에 사용 할 수 있는 것들을 정리해 보았다.
앞으로 나에게 도움이 되길....!
'기타' 카테고리의 다른 글
다음 지도 api (0) | 2018.12.11 |
---|---|
css 참고 사이트 (0) | 2018.11.12 |
오류 Cannot change version of project facet Dynamic Web Module to 2.5. (0) | 2018.10.12 |
tomcat error (0) | 2018.10.09 |
maven dependencies error (0) | 2018.10.09 |