본문 바로가기
IT관련

IT에서 말하는 형상관리란 무엇인가?

by 집도리잡동사니 2022. 9. 20.
반응형

형상관리란?

제가 현재 가장 잘 알고있다고 생각하는것중에 하나가 형상관리라고 생각합니다.

그래서 오늘은 형상관리에 대해서 아는부분을 설명드릴까합니다.

저는 현재 형상관리 업체에서 일하고있습니다. 처음 취직할때는 형상관리가 뭐 하는거지 라며 참 많이 몰랐었는데,,

형상관리는 소스나 산출물등등을 버전관리를 하는것입니다. 프로젝트를 진행할 때 여러사람들이 협업해서 개발할때 A.java라는 소스가 있는데, 철수도 A.java를 고치고 미영이도 A.java를 같이 고친다고 생각하면 철수가 고친거를 미영이가 알지 못해서 원복을 한 이후 다시 고친다거나 소스가 덮어지거나 엉망이 될 수 있습니다, 그런것을 방지하기위해서 처음 있었던 A.java는 1버전 철수가 그 다음에 고치면 A.java는 2버전 철수가 고친후 미영이도 고치면 A.java는 3버전이 되는것입니다.

 

버전별로 파일을 관리하기 때문에 어떤 사람이 언제 왜 어떻게 고쳤는지 기록해서 1년후 5년 후에도 그 파일의 버전 이력을 확인 할 수 있습니다. 형상관리의 장점은 이런 부분들이 있고, 대표적인 오픈 형상관리 툴은 SVN, Git등이 있고 형상관리툴을 사용할려면 용어를 알아야겠죠?!

 

용어

레파지토리(Repository) : 형상관리 할려는 파일들 위에서말한 A.java같은 파일들을 저장하는 곳

                     쉽게 말해서 A.java가 1버전 2버전 3버전 다 저장하는 곳을 말합니다.

반출(Check Out) : 레파지토리에서 파일을 가져오는 행위

반입(Check In) : 내가 수정한 파일을 레파지토리에 저장하는 행위

동기화(Synchronized) : 형상관리에 있는 파일들과 내가 가지고 있는 파일들을 비교하는 행위

 

사실 위에 용어 말고도 릴리즈 뭐 여러가지 용어들이 있지만, 여기선! 간단하게 가장 중요한 용어들만 설명드렸습니다.

 

사실 저도 잘몰랐지만, 형상관리 하면서 CI/CD라는 용어를 모르면 안되는데 CI/CD는 Continuous Integration /Continous Deployment 지속적인 통합과 지속적인 배포 이라는 말도 많이합니다. CI/CD관련해서는 다음에 기회가되면 다시 한번 정리해드리겠습니다!

 

그리고 시간이 지날수록 점점 보안이 강화되고 감사들이 강화되면서 기업들이 형상관리가 의무화가 되어 가는것 같습니다. 현재 형상관리 회사에서 일하고있는데, 처음에는 그렇게 많이 쓰지 않았던거 같은데 요즘은 기업들이 다들 강제적으로 써야하는 분위기다보니 일이 너무 많아져서,,, 힘들지만.... 저도 처음에 일하면서 형상관리가 뭐지? 라는 생각을 참 많이 했어서 한번 가장 쉽게 기초적인 부분만 이해할 수 있도록 설명해봤는데 이해가 안되시거나 궁금하신 부분 있으시면 댓글을 남겨주시면 제가 아는선에서는 답변드리겠습니다.

 

728x90
반응형

댓글