GitHub란?
이 단원에서는 다음 학습 목표를 검토합니다.
- GitHub Enterprise Platform에 대한 간략한 개요
- 리포지토리를 만드는 방법
- 리포지토리에 파일 추가
- 리포지토리를 검색하는 방법
- gist 및 wiki 소개
GitHub
GitHub는 분산 버전 제어 시스템인 Git을 핵심으로 사용하는 클라우드 기반 플랫폼입니다. GitHub 플랫폼은 프로젝트에서 협업 프로세스를 간소화하고 개발자와 사용자의 협업을 허용하는 웹 사이트, 명령줄 도구 및 전체 흐름을 제공합니다.
앞에서 배운 것처럼 GitHub에서는 보안 소프트웨어를 빌드, 크기 조정 및 제공하는 AI 기반 개발자 플랫폼을 제공합니다. GitHub Enterprise 플랫폼, AI, 공동 작업, 생산성, 보안 및 규모의 핵심 요소를 각각 분석해 보겠습니다.
AI
생성형 AI는 우리가 말하는 대로 소프트웨어 개발을 극적으로 변화시키고 있습니다. GitHub Enterprise 플랫폼은 AI 기반 끌어오기 요청 및 이슈, Copilot을 통한 생산성 및 보안 검사 더 빠르게 자동화하여 협업 수준을 개선하고 있습니다.
협업
GitHub가 수행하는 모든 작업의 중심에는 협업이 있습니다. 우리는 비효율적인 협업으로 인해 시간과 돈이 낭비되는 것을 알고 있습니다. 그에 따라 협업이 쉽게 수행되도록 하는 원활한 도구 모음을 사용하여 이를 상쇄합니다.
리포지토리, 문제, 끌어오기 요청 및 기타 도구는 개발자, 프로젝트 관리자, 운영 리더 및 같은 회사의 다른 사용자를 사용하도록 설정하는 데 도움이 됩니다. 이를 통해 더 빠르게 함께 작업하고, 승인 시간을 단축하고, 더 빠르게 배송할 수 있습니다.
생산성
GitHub Enterprise Platform에서 제공하는 자동화를 통해 생산성이 향상됩니다. 기본 제공 CI/CD(연속 통합 및 지속적인 업데이트) 도구가 워크플로에 직접 통합되어 있는 플랫폼은 사용자에게 작업을 설정하고 잊어버리고 일상적인 관리를 처리하고 일상적인 작업을 가속화하는 기능을 제공합니다. 이렇게 하면 개발자가 가장 중요한 작업인 혁신적인 솔루션 만들기에 더 많은 시간을 할애할 수 있습니다.
보안
GitHub는 처음부터 개발 프로세스에 직접 보안을 통합하는 데 중점을 두고 있습니다. GitHub Enterprise 플랫폼에는 기본 제공 보안 솔루션으로 보안 위험을 최소화하는 네이티브 자사 보안 기능이 포함되어 있습니다. 또한 코드는 조직 내에서 비공개로 유지됩니다. 동시에 보안 개요 및 Dependabot을 이용할 수 있습니다.
GitHub는 기능이 엔터프라이즈급으로 지원되도록 지속적인 투자를 이어왔습니다. Microsoft 및 고도로 규제되는 산업은 GitHub를 신뢰하며 글로벌 규정 준수 요구 사항을 충족합니다.
Scale
GitHub는 1억 명이 넘는 개발자, 3억 3천만 개가 넘는 리포지토리 및 수많은 배포에 대한 실시간 데이터가 있는 동종 최대 규모의 개발자 커뮤니티입니다. 당사는 개발자의 변화하는 요구를 이해하고 일치하도록 제품을 변경할 수 있었습니다.
그 결과 전 세계 어느 기업도 따라올 수 없는 놀라운 규모를 갖추게 되었습니다. 매일 당사는 이 인상적인 커뮤니티에서 더 많은 통찰력을 얻고 그들의 요구를 충족시키기 위해 플랫폼을 발전시키고 있습니다.
기본적으로 GitHub Enterprise 플랫폼은 개발자 환경에 중점을 둡니다. 업계를 변화시키는 인사이트, 혁신적 효율성을 위한 협업 기능, 생산성 향상을 위한 도구, 모든 단계의 보안 및 통합된 단일 플랫폼에서 모든 것을 새로운 차원으로 끌어올리는 AI를 제공할 수 있는 규모를 갖추고 있습니다.
이제 GitHub의 근간인 리포지토리에 대해 알아보겠습니다.
리포지토리 소개
먼저 다음 사항을 검토해 보겠습니다.
- 리포지토리란?
- 리포지토리를 만드는 방법
- 리포지토리에 파일 추가
- 리포지토리를 검색하는 방법
- gist, wiki 및 GitHub 페이지 소개
리포지토리란?
리포지토리에는 모든 프로젝트 파일과 각 파일의 수정 기록이 포함됩니다. 사용자와 공동 작업하는 데 도움이 되는 필수 요소 중 하나입니다. 리포지토리를 사용하여 작업을 관리하고, 변경 내용을 추적하고, 수정 기록을 저장하고, 다른 사용자와 작업할 수 있습니다. 더 자세히 알아보기 전에 먼저 리포지토리를 만드는 방법을 살펴보겠습니다.
리포지토리를 만드는 방법
개인 계정 또는 자신이 충분한 권한을 가진 조직에 새 리포지토리를 만들 수 있습니다.
github.com에서 리포지토리를 만드는 과정을 살펴보겠습니다.
아무 페이지의 오른쪽 위에 있는 드롭다운 메뉴를 사용하여 새 리포지토리를 선택합니다.
소유자 드롭다운 메뉴를 사용하여 리포지토리를 소유하려는 계정을 선택합니다.
리포지토리의 이름과 설명(선택 사항)을 입력합니다.
리포지토리 표시 여부를 선택합니다.
퍼블릭 리포지토리는 인터넷의 모든 사용자가 액세스할 수 있습니다.
프라이빗 리포지토리는 사용자, 명시적으로 액세스를 공유하는 사용자 그리고 조직 리포지토리의 경우 특정 조직 구성원만 액세스할 수 있습니다.
리포지토리 만들기를 선택합니다. 축하합니다! 이제 리포지토리가 만들어졌습니다.
다음으로, 리포지토리에 파일을 추가하는 방법을 검토해 보겠습니다.
리포지토리에 파일을 추가하는 방법
GitHub의 파일은 여러 가지 용도로 사용할 수 있지만 파일의 주된 목적은 프로젝트에 대한 데이터와 정보를 저장하는 것입니다. 리포지토리에 파일을 추가하려면 먼저 파일을 추가하려는 리포지토리 내에서 최소 쓰기 액세스 권한이 있어야 합니다.
그럼, 리포지토리에 파일을 추가하는 방법을 살펴보겠습니다.
GitHub.com에서 리포지토리의 기본 페이지로 이동합니다.
리포지토리에서 새 파일 만들기 링크를 선택하거나 기존 파일을 업로드하여 파일을 만들려는 폴더를 찾습니다.
추가되면 파일 목록 위에서 파일 추가ᐁ 드롭다운 메뉴를 선택합니다. 그런 다음 새 파일 만들기를 선택합니다.
파일 이름 필드에 파일 이름 및 확장명을 입력합니다. 하위 디렉터리를 만들려면 디렉터리 구분 기호 /를 입력합니다.
파일 콘텐츠 텍스트 상자에 파일에 대한 콘텐츠를 입력합니다.
새 콘텐츠를 검토하려면 파일 콘텐츠 위에서 미리 보기를 선택합니다.
변경 내용 커밋을 선택합니다.
커밋 메시지 필드에 파일에 적용한 변경 내용을 설명하는 짧고 의미 있는 커밋 메시지를 입력합니다. 커밋 메시지에서 둘 이상의 작성자가 커밋의 특성을 지정할 수 있습니다.
GitHub.com 계정에 연결된 전자 메일 주소가 두 개 이상 있는 경우 전자 메일 주소 드롭다운 메뉴를 선택합니다. 그런 다음 Git 작성자 이메일 주소로 사용할 이메일 주소를 선택합니다. 이 드롭다운 메뉴에는 확인된 이메일 주소만 표시됩니다. 이메일 주소 개인 정보를 사용하도록 설정한 경우 [username]@users.noreply.github.com이 기본 커밋 작성자 이메일 주소입니다.
커밋 메시지 필드 아래에서 커밋을 현재 분기에 추가할지 아니면 새 분기에 추가할지 결정합니다. 현재 분기가 기본 분기인 경우 커밋에 대한 새 분기를 만들도록 선택한 다음 끌어오기 요청을 만들어야 합니다.
변경 내용 커밋 또는 변경 내용 제안을 선택합니다.
이제 리포지토리에 새 파일을 만들었습니다. 또한 새 분기를 만들고 커밋했습니다.
다음 단원에서 분기 및 커밋을 검토하기 전에 리포지토리와 유사하기 때문에 gist, wiki 및 GitHub Pages를 빠르게 검토해 보겠습니다’.
gist란?
리포지토리에 대해 이해했으므로 이제 gist를 검토할 수 있습니다. 리포지토리와 마찬가지로 gist는 코드 조각을 다른 사용자와 공유하는 간소화된 방법입니다.
모든 gist는 Git 리포지토리로, 포크 및 복제할 수 있고 공개 또는 비밀로 만들 수 있습니다. 공용 gist는 공개적으로 표시되어 사람들이 새 gist가 만들어질 때 찾아볼 수 있습니다. 공용 gist는 검색도 가능합니다. 반대로, 비밀 gist는 검색할 수 없지만 완전히 비공개는 아닙니다. 비밀 gist의 URL을 친구에게 보내면 친구가 해당 URL을 확인할 수 있습니다.
gist에 대한 자세한 내용은 이 모듈의 끝에 있는 리소스 섹션에 연결된 Gist 만들기라는 문서를 참조하세요.
wiki란?
GitHub.com의 모든 리포지토리에는 wiki라는 호스팅 설명서 섹션이 제공됩니다. 리포지토리의 wiki를 사용하여 프로젝트 사용 방법, 프로젝트를 설계한 방법 또는 핵심 원칙 등 프로젝트에 대한 긴 형식의 콘텐츠를 공유할 수 있습니다. 추가 정보 파일은 프로젝트에서 수행할 수 있는 작업을 빠르게 알려 주지만 wiki를 사용하여 추가 설명서를 제공할 수 있습니다.
리포지토리가 비공개인 경우 리포지토리에 대한 최소한 읽기 권한이 있는 사용자만 wiki에 액세스할 수 있습니다.