Git 및 GitHub 기본 사항

Jan 17 2023
최신 소프트웨어 개발은 ​​버전 제어 시스템 없이는 불가능합니다. 전체 환경은 서로 다른 기능을 동시에 작업하는 팀의 협력에 달려 있으며 버전 제어를 통해 작업을 쉽게 할 수 있습니다.
Unsplash의 Yancy Min 사진

최신 소프트웨어 개발은 ​​버전 제어 시스템 없이는 불가능합니다. 전체 환경은 서로 다른 기능을 동시에 작업하는 팀의 협력에 달려 있으며 버전 제어를 통해 작업을 쉽게 할 수 있습니다. 따라서 현재 가장 널리 사용되는 버전 제어 시스템인 Git의 작동 방식을 이해할 필요가 있습니다.

이 기사에서는 Git 버전 제어 시스템의 기본 사항과 일반적인 Git 사용 방법을 살펴보겠습니다.

힘내 란 무엇입니까?

자, 먼저 git 버전 제어 시스템이 정확히 무엇인지에 대한 질문에 답해 봅시다.

Git은 Linux를 만든 사람이 개발한 오픈 소스 분산 버전 제어 시스템입니다 . Linux, Windows 및 Mac OS와 같은 모든 주요 운영 체제에서 작동하므로 어떤 것을 사용하든 Git이 작동합니다.

Git을 사용하는 이유

이 질문에 답하기 위해 제가 막 웹 개발을 시작했을 때를 회상해 보겠습니다.

저는 오래된 가정용 데스크톱 컴퓨터에서 작업하고 있었고 여기에서 다양한 프로젝트를 모두 빌드했지만 어느 날 컴퓨터가 고장나서 모든 프로젝트를 잃어버렸습니다.

얼마 후 나는 새 기계를 얻었고 이전 프로젝트가 내 학업에 중요했기 때문에 모든 이전 프로젝트를 다시 수행하기로 결정했습니다. 또한 더 나은 기술 접근 ​​방식을 사용하여 업그레이드하고 싶었습니다.

과거에 데이터 손실 문제에 직면한 적이 있었기 때문에 변경할 때마다 모든 프로젝트의 다른 버전이 있는 이동식 장치와 내 컴퓨터의 여러 영역에 내 작업을 저장하는 놀라운 솔루션으로 이 문제를 해결하기로 결정했습니다. 또는 동일한 프로젝트를 업그레이드했습니다.

그래서 저는 모든 프로젝트 파일을 버전 2라는 새 폴더에 복사하곤 했습니다. 그곳에서 모든 변경이 이루어졌습니다. 아마도 동일한 프로젝트에서 새로운 아이디어가 생기거나 큰 변경이 있을 때 다른 폴더를 열었습니다. 이름을 버전 3으로 지정하고 모든 버전 2 파일을 여기에 복사하고 일부 변경 사항이 내 사이트를 손상시키는 경우 과거로 돌아가야 할 때마다 내 프로젝트의 더 안정적인 버전으로 돌아가곤 했습니다. Git에 대해 무엇이든 알고 있으므로 이것은 버전 제어 시스템에 대한 나의 초기 아이디어에 가깝습니다.

글쎄요, 이것은 제가 무거운 노드 모듈 파일이 있는 몇 개의 거대한 프로젝트를 착수할 때까지 꽤 오랫동안 저에게 효과가 있었습니다. 그 때문에 많은 변경을 해야 했고 이로 인해 다양한 프로젝트의 많은 버전이 만들어지게 되었고, 어느새 이 접근법은 내 하드 드라이브 저장 공간을 너무 많이 먹어서 내 모든 드라이브가 이제 빨간색으로 바뀌었고 더 나은 솔루션이 필요하다는 것을 알았습니다.

여기에서 친구가 Git에 대해 알려주었고 Git 버전 제어 시스템 덕분에 모든 문제가 해결되었습니다.

Git 버전 제어 시스템

  • 시간이 지남에 따라 파일의 변경 사항을 기록하는 시스템입니다.
  • 언제든지 해당 파일의 특정 버전을 불러올 수 있습니다.
  • 많은 사람들이 프로젝트에서 쉽게 공동 작업을 수행하고 컴퓨터에 고유한 버전의 프로젝트 파일을 보유할 수 있습니다.

힘내 명령

  • git clone <URL>: GitHub/Bitbucket 또는 다른 원격 서버에서 호스팅되는 리포지토리의 URL이며 컴퓨터에 다운로드할 수 있습니다.
  • git add <filename>: 이 파일은 다음에 저장소 사본을 저장할 때 추적하려는 파일입니다. 추가할 파일이 포함된 디렉토리와 동일한 디렉토리에 있어야 함을 기억하십시오.
  • git add *: 개별 파일을 추가하는 git보다 확실히 더 빠른 저장되지 않은 모든 파일을 추가합니다. 그러나 추가와 커밋을 분리하면 리포지토리를 제어할 수 있고 추적할 변경 사항을 지정할 수 있습니다.
  • git commit -m "message": 이 명령은 단순히 저장소에 대한 변경 사항을 저장합니다. -m은 방법을 나타냅니다. 메시지는 "commit"에서 변경한 내용을 설명해야 합니다. 이는 일련의 변경 사항을 설명하는 메시지 목록으로 돌아갈 수 있으므로 매우 유용합니다.
  • git status: 현재 저장소에서 진행 중인 작업을 알려줍니다.