2023.05.05

Jay Ji·2023년 5월 5일
0

I write TIL I close my Eyes

목록 보기
25/28
post-thumbnail

GitHub

What is GitHub?

GitHub는 개발자들의 코드를 저장 및 관리하고 코드 변경 사항을 추적 및 제어해주는데 도움을 주는 웹사이트 및 클라우드 기반 서비스입니다. GitHub가 무엇인지 정확하게 이해하기 위해선 Version Control과 Git을 알아야 합니다.

Version Control

Version Control은 개발자의 프로젝트 코드의 변경 사항을 추적하고 관리하는데 도움이 됩니다. 프로젝트가 커질수록 Version Control은 필수적으로 필요한 요소입니다. 개발자가 프로젝트 코드베이스의 특정 부분에 대해 작업할 경우, Main 소스 코드를 직접 편집하는 것은 안전하거나 효율적이지 않기때문에, Version Control을 통하여 branching과 merging을 사용하여 안전하게 해당 부분을 변경할 수 있습니다.

Git

Git은 specific open-source version control system입니다. 형상 관리 도구 중 하나이며, 버전관리 시스템이라고도 합니다. Git은 소스코드를 효과적으로 관리할 수 있게 해주며, 소스코드를 주고 받을 필요 없이, 같은 파일을 여러 명이 동시에 작업하는 병렬 개발이 가능합니다.

  • 쉽게 말해서 Git은 버전 관리 시스템이고, GitHub는 버전 관리 웹호스팅 서비스라고 생각하면 됩니다.

Forking

Fork는 대상 repository의 완전 새로운 복사본을 생성합니다. 포크를 수행하는 개발자는 새로 복사된 코드베이스를 제어 할 수 있으며, Forked repository에 기여한 개발자는 새로 포크된 리포지토리에 대해 알지 못하며, 이전 기여자는 포크 작업을 수행한 개발자가 권한을 주지 않으면 Git포크에 기여하거나 동기화 할 수 없습니다.

Cloning

Cloning은 Git repository가 복제되면서 대상 repository 이전에 기여한 모든 개발자들 사이에서 공유된 상태로 유지됩니다. 이전에 해당 코드베이스에 기여한 다른 개발자들은 계속해서 변경 사항을 push하고 clone 된 repository에서 업데이트를 가져올 수 있습니다. Repository를 복제한 개발자는 코드베이스 복사본을 동료 개발자가 업데이트한 내용과 동기화 할 수 있습니다.

What is the difference between Forking and Cloning?

Forking은 GitHub 계정에서 수행되고 복제는 Git을 사용하여 수행이 됩니다. repository를 Fork하면 원본 repository의 복사본을 생성하는 것이지만, repository는 GitHub에 남아있습니다. 반면 저장소를 Clone하면 저장소가 Git의 도움으로 로컬 컴퓨터에 복사가 됩니다.

When to use Clone and Fork?

소프트웨어 개발 팀에 합류하여 코드베이스에 기여할 계획인 개발자들은 보통 repository를 Clone합니다. 개발자나 팀의 다른 구성원이 변경하거나 업데이트하면, 복제본을 git push 또는 git pull로 쉽게 동기화할 수 있습니다.

공개적으로 액세스할 수 있는 Git repository를 기반으로 하는 별도의 격리된 새 프로젝트를 설정하려는 개발자는 Fork를 사용 합니다.

profile
Think out of the Box

0개의 댓글