프로젝트를 하면 가장 힘든 일이 무엇일까요?

우리 첫 번째 프로젝트했을 때 가장 힘들었던 것이 무엇이었나요? 체력적으로 힘들었던 거 말고^^

네... 각자 맡은 일을 하고 합쳐서 프로그램이 잘 돌아가게 만들고 작업하는 일이었죠?

분명히 잘 실행되고 잘 돌아가는 프로그램이었는데 왜 합치기만 하면 안 돌아가는지... 이런 문제들 때문에 수정하고 또 수정하고... 혹자는 개발하는 거보다 합치는 게 더 힘들다고 얘기하기도 합니다. 설마 현업에서 개발할 때 이렇게 개발하지는 않겠죠?

현업에서는 여러 가지 다양한 툴을 이용해서 개발을 support 하고 있습니다. 우리가 그런 툴들을 다 살펴볼 수는 없지만 적어도 프로젝트를 개발할 때 편하게 개발할 수는 있어야 하겠죠?

JDK도 벌써 12버전입니다. 이처럼 소프트웨어는 요구 사항이 변경되며 계속 변경될 것입니다. 계속 변경된 내용을 관리할 수 있어야 합니다.

무엇보다 소프트웨어는 여러 명이 협업해서 개발할 것이고 서로서로 전혀 상관없는 것을 개발하면 상관없지만 팀원 한 명이 개발한 내용을 가지고 다른 팀원이 개발을 할 것이고 내가 개발한 것을 또 다른 팀원이 작업을 해야 하는 상황은 당연히 발생할 것입니다. 이때 변경된 내용을 체계적으로 관리하지 못한다면 이미 바뀌었는데도 이전 버전의 파일을 이용해서 개발하는 상황이 발생할 수도 있을 것입니다. 이렇게 서로 협업해서 프로젝트를 할 때 변경되는 소스 코드를 관리하고 history를 관리하는 시스템을 버전 관리, 변경 관리, 통칭 형상관리라 합니다. 

간단하게 버전 관리라고 생각하시면 됩니다. 이렇게 버전 관리를 할 수 있도록 만들어진 시스템으로는 git, svn(Subversion), cvs 등이 있습니다. 이 중 우리는 git을 살펴보도록 하겠습니다. git은 버전 관리 시스템이고 git을 웹으로 서비스하는 사이트가 github입니다. git은 프로그램을 다운로드해 설치하고 리눅스 명령어들을 이용하며 작업해야 하지만 우리는 github 사이트를 이용하여 관리하는 방법만 살펴볼 것입니다.

 

 

 

+ Recent posts