ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Gitn] Git의 목적과 쓸모 - 버전관리/백업/협업
    생활코딩/Gitn 2021. 1. 25. 10:00

    git:

    -(문서의) 버전관리/백업/협업에 특화된 도구

    -구체적으로는 자주 변경되는 수많은 문서를 관리해야 하는데, 그 문서들이 어떻게 변경되었는지 알아야하고, 백업도 해야하고, 다른 사람과 공유해서 공동으로 작업해야 하는 경우에 사용하면 아주 좋다.

     


    [강의 출처] opentutorials.org/course/3837/22435

     

    생활코딩 수업을 따라가다가 WEB3 즈음에서 코드가 슬슬 복잡해지면서 Git의 필요성을 느끼고 잠시 방향 전환했다.

    이참에 Git을 잘 배워서 코드는 Github에 올리고 여기에는 진행 과정만 적어두도록 해야겠다.

     

    버전관리가 왜 필요한가?

    작업을 진행하면서 여러 경우의 수를 만들어야 할 때, 특정 작업 이전의 원본을 따로 보관해두어야 할 때,

    버전관리를 사용하지 않는다면 파일_1.txt, 파일_2.txt 처럼 여러 파일로 나누어 저장해야 한다.

    이 상태로 작업을 계속 진행하면 파일_1.txt, 파일_2.txt, 파일_3.txt, ... 처럼 파일이 무한히 많아진다.

    작업이 복잡해질수록 단순히 숫자만 붙여서는 내용을 알 수 없어, 파일_2021수정사항반영.txt 처럼 파일제목이 길어지기도 한다.

     

    git을 사용하면 수정내역, 수정일자, 기타 필요한 정보들을 추적하기 쉽게 정리해둘 수 있다.

    특정 작업이 완료될 때마다 git을 지정한 디렉토리에 Commit to Master를 통해 버전을 생성 혹은 추가하면,

    해당 작업 이전과 비교해서 무엇이 달라졌는지, 수정이 언제 되었는지, 남겨둔 메모(커밋 메시지) 들을 확인할 수 있다.

    일종의 타임머신이라고 생각하면 된다. 이후에 돌아오고 싶은 시점을 저장해두는 것이다.

     

     

    어떻게 백업을 하지?

    데이터를 특정 컴퓨터에만 보관해두면 그 데이터는 컴퓨터와 운명 공동체가 된다. 컴퓨터가 망가지면 같이 없어져버린다.

    이런 경우를 막기 위해 데이터를 다른 곳에도 복제해두어야 하는데, 이왕이면 물리적으로 멀리 떨어져있는 곳에 보관하는 편이 더 안전하다.

     

    github에서 제공하는 remote-repository를 이용하면 깃허브의 원격저장소에 데이터를 보관해둘 수 있다.

    내 컴퓨터(내 컴퓨터의 git 디렉토리는 지역저장소 local-repository라고 한다.)에서 진행했던 커밋내역도 함께 백업이 된다.

    이렇게 내 컴퓨터의 지역저장소에 있는 데이터를 깃허브의 원격저장소에 백업하는 과정을 push라고 한다.

    원격저장소에 저장된 내용은 git 지역저장소가 아닌 다른 컴퓨터에서도 접근이 가능한데,

    이때 저장된 내용을 가져올 컴퓨터로 당겨오는 작업은 pull이라고 부른다.

     

    협업은?

    위에서 백업된 데이터를 push, pull하는 과정을 반복해서 협업이 가능하다.

    혹시 두 명 이상이 동일한 파일을 수정해서 충돌이 생긴다면 git이 교통정리도 해주기 때문에,

    다른 파일을 덮어쓰기해서 데이터가 유실되는 일은 생기지 않는다.

     

     

    Git Client (깃의 종류)

    github는 마치 반창고계의 대일밴드처럼 이런 버전관리 제품군의 대표격일 뿐이다.

    윈도우 탐색기에 붙여서 사용가능한 TortoiseGit, 높은 자유도가 보장되는 Sourcetree, CLI 환경에서 동작하는 오리지널 git 등

    다른 client도 많이 있어서, GUI를 이용하더라도 git 활용은 충분히 가능하다.

     

    댓글

Designed by Tistory.