VCS(Version Control System)과 Git

     

     

    이번 포스팅에서는 Git의 대해서 알아보도록 하겠습니다.

     

     

     

     

     

       VCS(Version Control System) - 버전 관리 시스템

     

     

     

     

     

     

    우리는 파일을 작성할 때 버전 관리를 하고 있었습니다.

     

    예로 어떤 파일을 수정한다고 할 때 수정하기 전에 내용을 확인할 경우, 수정전에 상태로 변경해야 될 경우, 수정전 상태를 보관해야 될 경우가 있습니다.

    이러한 경우 파일 이름 뒤에 이름을 붙여서 여러 개의 파일로 관리하게 됩니다.

     

    버전 관리 시스템(Version Contro System, VCS)을 이용하면 파일의 이름을 변경하지 않고 버전을 관리할 수 있으며, 변경된 사항들은 컴퓨터에서 관리할 수 있게 됩니다.

     

     

     

     

     

       VCS(Version Control System 버전 관리 시스템)의 대표적인 기능

     

     

     

     

     

    1. 소스코드의 버전관리와 복원

     

     

    프로그램을 개발하거나 유지 보수 하는 과정에 많은 파일들을 수정하고 고치게 됩니다 그런데 잘못된 코드로 인해 코드 복원, 코드 변경 내역, 파일이 바뀌기 전 내역들도 모두 저장해야 됩니다

    그래서 초기엔 중요한 시점마다 프로젝트 통째로 날짜나 설명 등의 파일명을 넣고 압축하여 저장하게 됩니다 그러나 이러한 방법은 용량도 많이 차지하고, 꽤 번거롭습니다

     

     

     

     

     

     

    하지만 VCS(Version Control System 버전 관리 시스템)을 사용하면 파일을 누가 수정하였고, 파일이 바뀌기 전 내역들 모두 쉽게 변경과 확인을 할 수 있고, 특정 시점의 파일의 내용으로 변경이 가능합니다.

     

     

     

     

     

    2. 소스코드의 협업

     

     

    프로젝트가 작은 경우 혼자서도 개발하겠지만 프로젝트 규모가 있는 경우 여러 명이서 나누어 작업 하게 됩니다.

    그런데 한 폴더 안에 여러 명이서 작업하게 될 경우 프로그램마다 각각 작업하게 되고 작업 시 전부 각자의 컴퓨터에 복사해서 작업하게 됩니다

    이때 개발이 완료되어 실 서비스의 운영하기 위한 테스트를 해보려고 할 때 소스코드를 공유해야 되는데 이러한 소스코드를 이메일, 메신저 등등 으로 공유하기가 복잡하고 어렵습니다

    VCS(Version Control System 버전 관리 시스템)을 사용하면 손쉽게 소스코드를 공유가 가능합니다.

     

     

     

     

     

       VCS(Version Control System 버전 관리 시스템) - GIT

     

     

     

     

     

    VCS(Version Control System 버전 관리 시스템)은 제품명은 아니고 CVS, SVN, GIT 들이 유명한 버전 관리 시스템 입니다

    SVS 는 이전에 유명했지만 현재는 잘 사용하지 않으며, SVN은 SVS 이후에 많이 사용하였고 현재 많이 사용하고 있으며, GIT 은 오늘날 가장 많이 사람들이 사용하고 있으며 개발자가 아니더라도 한 번쯤 들어봤을만한 버전 컨트롤 시스템입니다.

    Git 의 가장 큰 장점은 개발자의 컴퓨터의 저장하여 관리할 수 있지만 다른 사람들과 쉽게 협업하기 위해 Git 설치되어 있는 서버에 저장하거나 Github 같은 저장 공간에 저장할 수 있습니다

    Git 여러 가지 특징과 장담점이 있는데 앞으로의 포스팅을통해 하나씩 알아보도록 하겠습니다.

     

     

     

     

     

       GIT 과 저장공간

     

     

     

     

     

     

    Git은 소스코드의 버전 관리를 위한 소프트웨어이며 Github은 git 으로 원격전송된 내역들이 저장되는 공간을 제공하는 서비스입니다

     

     

     

     

     

     

    Git 으로 관리하는 모든 소스코드들과 프로젝트는 무제한으로 Github에 무료로 전송하여 저장할 수 있으며, 꼭 github 뿐만 아니라 Gitlab, Bitbucket 등등 여러 곳이 있지만 가장 많이 사용되는건 Github 입니다

     

     

     

     

     


    또한, Github 에 나의 소스코드를 업로드하면 전 세계의 모든 사람들이 볼 수 있고 다운로드할 수 있는데, 다른 사람들의 잘못된 기능을 수정해 주거나 뛰어난 프로그래머에게 제안도 받을 수 있습니다

     

     

     

     

     


    하지만 이러한 소스코드가 모든 사람들에게 공개되기 때문에 기업에서는 별도의 저장소 서버를 구축하거나 Github 에 별도 비용을 지불하여 소스코드가 공개되지 않도록 저장하기도 합니다.

    Posted by 서버이야기