Git이란? GitHub? SVN?

2024. 9. 18. 00:20·데브옵스/VCS
728x90
반응형


1. 들어가며

Git 관련해서 정리하기 위해 정리 시작한 글


2. Git이란 무엇인가?

Git은 2005년 리누스 토발즈가 개발한 분산 버전 관리 시스템으로, 현대 소프트웨어 개발에서 필수적인 도구로 자리 잡았습니다. 코드의 변경 사항을 효과적으로 추적하고 여러 개발자 간의 협업을 원활하게 만드는 Git의 강력한 기능들은 많은 개발 팀들이 기존의 SVN(Subversion)에서 Git으로 전환하게 만든 주요 요인입니다.

2.1 Git의 구조

 Git은 크게 세 가지 영역으로 구성됩니다.

  • 작업 디렉터리(Working Directory) : 실제 파일들이 존재하는 곳
  • 스테이징 영역(Staging Area) : 커밋할 파일들의 정보를 저장하는 곳
  • 저장소(Repository) : 커밋된 파일들의 버전을 저장하는 곳

2.2 Git의 주요 특징 

  • 분산 버전 관리 : 중앙 서버 없이도 로컬에서 버전 관리가 가능합니다. 
  • 빠른 속도 : 대규모 프로젝트에서도 뛰어난 성능을 보입니다.
  • 비선형적 개발 : 여러 브랜치를 통해 동시다발적인 개발이 가능합니다.
  • 데이터 무결성 : 모든 파일의 체크섬을 통해 데이터의 정확성을 보장합니다.

2.3 Git을 사용해야 하는 이유

  • 버전관리 : 프로젝트의 변경 이력을 쉽게 추적하고 관리할 수 있습니다.
  • 협업 용이성 : 여러 개발자가 동시에 작업하고 코드를 공유할 수 있습니다.
  • 백업과 복구 : 언제든 이전 버전으로 돌아갈 수 있어 실수를 쉽게 복구할 수 있습니다.
  • 브랜치 기능 : 새로운 기능을 개발하거나 실험할 때 메인 코드에 영향을 주지 않고 작업할 수 있습니다.

3. Git과 GitHub

많은 사람들이 Git과 GitHub를 혼동하지만, 이 둘은 다릅니다.

  • Git : 버전 관리 시스템 자체 
  • GitHub : Git을 사용하는 프로젝트를 호스팅 하고 협업할 수 있는 웹 서비스

4. Git과 SVN

4.1 Git과 SVN 차이점 표

특성 Git SVN
구조 분산형 중앙집중식
저장소 로컬 복사본 중앙 서버
오프라인 작업 가능 제한적
성능 빠름(로컬 작업) 상대적으로 느림
학습곡선 가파름 완만함

5. 마무리

Git은 현대 소프트웨어 개발에서 없어서는 안 될 중요한 도구입니다. SVN에 비해 더 유연하고 강력한 기능을 제공하며, 현대적인 개발 환경과 잘 어울립니다. Git으로의 전환은 팀의 생산성과 협업 능력을 크게 향상할 수 있습니다. Git을 익히는 것은 모든 개발자에게 필수적인 기술이 되었으며, 이를 통해 더 나은 코드 관리와 팀 협업을 실현할 수 있습니다.


728x90
반응형

'데브옵스 > VCS' 카테고리의 다른 글

SVN(Subversion) 백업 및 복구  (0) 2024.09.11
'데브옵스/VCS' 카테고리의 다른 글
  • SVN(Subversion) 백업 및 복구
키큰난쟁이
키큰난쟁이
개발 블로그
    반응형
    250x250
  • 키큰난쟁이
    키큰난쟁이의 놀이터
    키큰난쟁이
  • 전체
    오늘
    어제
    • 분류 전체보기 (38)
      • AI (1)
        • AI 응용 (1)
      • 프로그래밍 언어 (5)
        • Java (3)
        • PHP (1)
        • JavaScript (1)
      • 프레임워크 (3)
        • Spring (3)
      • 서버 (8)
        • Web Server (2)
        • WAS (2)
        • Hypervisor (4)
      • 데이터베이스 (5)
        • MySQL•MariaDB (2)
        • Oracle (1)
        • Cubrid (2)
      • 운영체제 (4)
        • Linux (4)
      • 클라우드 (1)
        • Ncloud (1)
      • 데브옵스 (7)
        • VCS (2)
        • CICD (3)
        • Docker (2)
      • 지식 (2)
        • Web (2)
      • 기타 (2)
        • 일상 (2)
  • 블로그 메뉴

    • 일상
  • 링크

    • Instagram
    • github
  • 공지사항

    • 라이믹스 → 티스토리 이사
  • 인기 글

  • 태그

    자바
    젠킨스
    db
    애플실리콘
    docker
    프록시모스
    jenkins
    GitHub
    mariadb
    도커
    Apple Silicon
    DBMS
    마리아디비
    깃허브
    CI/CD
    java
    PROXMOX
    우분투
    리눅스
    devops
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
키큰난쟁이
Git이란? GitHub? SVN?
상단으로

티스토리툴바