99클럽 코테 스터디 31일차 Version Control Git
728x90
  • Version Control
    • Git
    • GitHub

Git 이란?

  • 분산 버전 관리 시스템으로, 개발자들이 소스 코드의 변경 사항을 효율적으로 관리할 수 있게 해줌.
  • Linus Torvalds 에 의해 2005년에 개발되었으며, 주로 소프트웨어 개발에 사용됨.

특징

  1. 분산 시스템
    • Git 은 중앙 집중식 서버가 아닌 각 개발자의 로컬 시스템에 전체 코드베이스의 복사본을 저장함. 네트워크에 접속하지 않고도 대부분의 작업을 수행할 수 있게 해줌.
  2. 데이터 무결성
    • Git 은 데이터의 무결성을 보장하기 위해 SHA-1 해시를 사용하여 파일과 커밋(Commit) 을 관리함. 이는 변경된 내용을 정확히 추적하고 잘못된 데이터 전송이나 파일 손상 시 복구가 가능하게 함.
  3. 브랜치와 머지
    • Git 의 Branch 기능은 매우 강력하며, 개발자가 다양한 기능을 독립적으로 개발하고 나중에 주 코드베이스와 합칠 수 있게 해줌. Merge 작업도 간단하고 효율적임
  4. 성능
    • 성능을 중요시하며, 대규모 프로젝트에서도 빠른 속도를 제공함.
  5. 보안
    • 보안 모델은 공개 키 (SSH 키) 를 이용하여 통신을 암호화 하고, 작업을 인증함.

기본 작업

  • 초기화(Init) : 새로운 저장소를 생성하거나 기존 저장소를 로컬로 복제함.
  • 추가(add) : 변경된 파일을 스테이징 영역(Staging Area) 에 추하여 다음 커밋에 포함.
  • 커밋(Commit) : 스테이징 영역에 추가된 변경 사항을 저장소의 기록에 추가함.
  • 푸시(Push) : 로컬 커밋을 원격 저장소에 전송함.
  • 풀(Pull) : 원격 저장소의 변경 사항을 로컬 저장소로 가져옴.
  • 브랜치 : 독립적인 작업을 위한 분기점을 생성함.
  • 머지 : 두 개의 브랜치를 하나로 합침.
  • 체크아웃 : 다른 브랜치로 전환하거나 특정 버전의 파일을 복구함.

활용

Git 은 그 자체로도 좋지만, GitHub, GitLab, BitBucket과 같은 온라인 플랫폼과 함께 사용될 때 더욱 효과적임.
코드 호스팅, 리뷰, 이슈 트래킹 등 추가적인 기능을 제공함.

728x90