[GitHub] 깃허브 총 정리

JY·2023년 10월 11일
1

GitHub

목록 보기
1/1
post-thumbnail

📌 GitHub란?

소프트웨어 개발 및 협업 프로젝트를 위한 웹 기반의 소스코드 관리 서비스입니다. 주로 Git 버전 관리 시스템을 기반으로 하며, 개발자들이 소스 코드를 공유, 협업 및 관리할 수 있는 중요한 도구 중 하나이며, GitHub은 코드 호스팅, 이슈 추적, 풀 리퀘스트, 웹 기반의 코드 브라우징, 협업 기능, 프로젝트 관리, GitHub Actions를 통한 지속적 통합 및 배포 등 다양한 기능을 제공합니다.


📌 branch란?

GitHub를 사용하려면 먼저 branch에 대해 알아야합니다. branch란 간단히 말하자면 독립적으로 작업을 수행하기 위한 영역이라고 생각하시면 됩니다.
필요에 의해 만들어지는 branch는 각각의 다른 branch에 영향을 줄 수 없기에 협업시 동시에 여러명이 작업을 진행할 수 있습니다.

기본적으로 Git 저장소를 생성하면 master branch가 생성되는데 사용자는 이에 새로운 branch를 생성하여 작업을 수행하고 분기된 branch들을 master에 합칠 수 있습니다.

위에 사진과 같이 파란점인 master branch를 두고 보라색, 초록색 점인 서브 branch를 두어 각각의 branch에서 작업을 수행한 뒤 master에서 합병해줍니다.

다음은 자주쓰는 branch 명령어입니다.

git branch --> 현재 생성되어있는 branch 조회, 접속된 branch에는 * 표시
git branch -m [ branch_name ] --> 새로운 branch 생성
git checkout [ branch_name ] --> 해당 branch로 접속
git merge [ branch_name ] --> 브랜치 합병, master에서만 가능
git branch -d [ branch_name ] --> branch 삭제


📌 주요 특징 및 기능

  1. 코드 호스팅 : GitHub은 Git 저장소를 호스팅하고, 개발자들은 원격 저장소에서 소스 코드를 업로드하고 공유할 수 있습니다.

  2. 이슈 추적 : 프로젝트의 버그, 개선 사항 또는 작업 항목을 추적하고 관리하는 기능을 제공합니다.

  3. 풀 리퀘스트 : 다른 개발자들에게 코드 변경 사항을 제안하고, 코드 리뷰 및 통합을 쉽게 할 수 있는 기능입니다.

  4. 웹 기반 코드 브라우징 : 저장소 내의 코드를 웹 브라우저에서 살펴보고 비교할 수 있습니다.

  5. 협업 기능 : 여러 개발자가 함께 작업하고 협력할 수 있도록 고안되었습니다.

  6. 프로젝트 관리 : 프로젝트 관리 도구를 통해 작업을 구성하고 추적할 수 있습니다.

  7. GitHub Actions : 지속적 통합 및 지속적 배포 (CI/CD)를 설정하고 자동화하는 데 사용할 수 있는 기능을 제공합니다.


📌 GitHub 사용법

사용법에 대하여 큰 흐름을 작성해보겠습니다. 1번은 최초 프로젝트 진행 시 한번만 시행하면 되고, 이 후 나머지 절차를 반복하는 방식으로 사용합니다.

  1. GitHub에 repository(저장소) 생성 또는 복제
  2. 프로젝트, 파일 생성
  3. 프로젝트, 파일 경로에서 Git repository에 연결
  4. 프로젝트, 파일의 편집 or 삭제 => 스테이징 영역에 저장 - (git add)
  5. 변경한 내용을 로컬 저장소에 commit - (git commit)
  6. 로컬 저장소를 push 하여 원격 저장소(Git repository)에 반영 - (git push)

🖼️ 4~6 과정 그림 참고

1. GitHub에 repository(저장소) 생성 또는 복제

GitHub에 접속하여 로그인 후 우측 상단에 +, new repository를 선택하여 프로젝트를 할당할 원격 저장소를 생성합니다.

Repository name란에 임의의 저장소 명을 적어 주시고, 공개 혹은 비공개 (Public or Private)를 선택 후 하단의 Create repository을 선택하면 새 저장소가 생성됩니다.

필요한 경우 Description란에 간략한 프로젝트 설명을 적으실 수 있습니다.

Add a README file을 체크하시면 저장소에 미리 작성한 설명파일을 생성해 둘 수 있습니다.

2. 프로젝트, 파일 생성

원격 저장소에 저장할 파일 혹은 프로젝틀 생성합니다.
디렉토리에 저장하신 후 해당 디렉토리 경로에서 "git init" 명령어로 현재 디렉토리를 새로운 Git 저장소로 변환해줍니다.

git init

3. 프로젝트, 파일 경로에서 Git repository에 연결

"git remote add origin [ url ]" 을 통해 내 Repository URL 정보를 받아와 연동시킵니다.
Git Repository URL은 Git Home에 Code 버튼을 클릭하면 볼 수 있습니다.

git remote add origin https://github/user_name/repository_name

4. 프로젝트, 파일의 생성 or 편집 or 삭제 => 스테이징 영역에 저장

프로젝트의 내용을 생성 혹은 수정할 경우, "git add [ project_name or file_name ]"으로 스테이징 영역에 데이터를 저장합니다.

git add . --> 현재 경로에 모든 파일을 저장
git add file_name --> 특정 파일만 저장
git status --> 스테이징 영역에 저장된 파일 상태 조회

5. 변경한 내용을 로컬 저장소에 commit

스테이징 영역에 저장된 파일을 로컬 저장소에 커밋합니다. 커밋은 변경된 사항들을 로컬 저장소에 기록해주는 작업입니다. 커밋시에는 메세지를 함께 작성해 주어야하는데 협업에서 변경 사항을 간단히 알려줄 수 있는 메세지를 적어두기 위해서입니다.

git commit -m 'upload file'
git log --> 커밋 로그를 조회

6. 로컬 저장소를 push 하여 원격 저장소(Git repository)에 반영

마지막으로 로컬 저장소에 commit 되어 있는 파일들을 push 하고 GitHub의 사용자 이름과 암호를 입력해 원격 저장소에 업데이트 해주면 됩니다.
GitHub 사이트에서 파일에 제대로 업데이트 되었는지 확인할 수 있습니다.

git push origin [ branch_name ]

0개의 댓글