GitHub 사용법 & 잔디 심기

2026. 6. 22. 22:00·BI&Programming-Tools/Etc

GitHub란?

Git 저장소를 온라인에 올려두는 원격 호스팅 서비스입니다.

코드 백업, 포트폴리오, 협업 등에 활용합니다.

 

잔디(contribution graph)는 매일 커밋/PR/Issue 활동을 하면 채워집니다.


원격 저장소 연결

 

로컬 → GitHub 순서

  1. GitHub에서 새 저장소(Repository) 생성합니다.
  2. 로컬 저장소에 원격 주소를 등록합니다.
  3. push합니다.
# 원격 저장소 등록
git remote add origin https://github.com/username/repo.git

# 등록된 원격 저장소 확인
git remote -v

# 처음 push (브랜치 연결 포함)
git push -u origin main

# 이후부터는 간단하게
git push

 

GitHub → 로컬 순서

# 원격 저장소 복제
git clone https://github.com/username/repo.git

push / pull / fetch

 

# 로컬 커밋을 원격에 올리기
git push

# 원격 변경 사항을 로컬에 받아서 자동 병합
git pull

# 원격 변경 사항을 받아오되 병합은 하지 않기
git fetch

 

git pull은 git fetch + git merge를 합친 것입니다.
혼자 작업할 때는 git pull을 주로 씁니다.



SSH 키 설정 (HTTPS 대신 사용 시)

HTTPS는 매번 토큰 입력이 필요할 수 있어서 SSH를 설정해두면 편합니다.

# SSH 키 생성
ssh-keygen -t ed25519 -C "이메일@example.com"

# 공개키 확인
cat ~/.ssh/id_ed25519.pub

 

공개키를 복사해서 GitHub → Settings → SSH and GPG keys → New SSH key에 붙여넣습니다.

이후 원격 주소를 SSH 형식으로 사용합니다.

git remote set-url origin git@github.com:username/repo.git

 


잔디 심기 (Contribution Graph)

잔디가 채워지는 조건

  • 커밋(Commit) : 기본 브랜치(main/master)에 반영된 커밋이어야 합니다.
  • Pull Request 오픈/병합
  • Issue 오픈/닫기
  • 코드 리뷰

브랜치에서 작업한 커밋은 main에 merge되기 전까지는 잔디에 반영되지 않습니다.
Fork한 저장소에서의 커밋은 원본 저장소에 PR이 병합되어야 잔디에 반영됩니다.

 

잔디가 안 채워지는 경우 체크리스트

  • 커밋의 이메일이 GitHub 계정 이메일과 다를 경우 반영되지 않습니다.
# 커밋에 사용된 이메일 확인
git config user.email

# GitHub에 등록된 이메일과 동일한지 확인
# 다르면 수정
git config --global user.email "github에_등록된_이메일"
  • GitHub Settings → Emails에서 해당 이메일이 등록되어 있어야 합니다.
  • Private 저장소 커밋도 잔디에 반영되려면 GitHub Settings → Contributions에서 "Private contributions" 옵션을 켜야 합니다.

 


자주 쓰는 GitHub 기능

README.md

저장소 루트에 README.md를 두면 GitHub에서 자동으로 표시됩니다. 프로젝트 설명, 사용법 등을 간단히 적어두면 됩니다.


.gitignore 자동 생성

저장소 생성 시 언어를 선택하면 GitHub가 기본 .gitignore를 자동으로 만들어 줍니다. gitignore.io에서 직접 생성도 가능합니다.


Fork & Pull Request (협업 시)

혼자 공부하는 경우엔 필수는 아니지만 참고용으로 정리합니다.

  1. 다른 사람의 저장소를 Fork해서 내 계정으로 복사합니다.
  2. 로컬에 clone해서 수정합니다.
  3. 내 저장소에 push합니다.
  4. 원본 저장소에 Pull Request를 보냅니다.


Issue

할 일이나 버그를 기록해두는 공간입니다. 혼자 쓰는 저장소에서도 TODO 목록처럼 활용할 수 있습니다.


토큰 인증 설정 (HTTPS 사용 시)

2021년 이후 GitHub는 비밀번호 대신 Personal Access Token(PAT)을 사용합니다.

  1. GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic) 또는 Fine-grained tokens → Generate new token
  2. Tokens (classic) 기준: 권한은 repo 체크
  3. 생성된 토큰을 복사해서 비밀번호 자리에 입력합니다.

macOS는 Keychain에 저장되므로 한 번만 입력하면 됩니다.

Windows는 자격 증명 관리자에 저장됩니다.

'BI&Programming-Tools > Etc' 카테고리의 다른 글

VSCode에서 Git & GitHub 사용하기  (0) 2026.06.23
Git 기초 & 버전 관리  (0) 2026.06.22
[생물정보학] Biopython 기초  (0) 2026.06.20
생물정보학을 위한 파이썬 라이브러리 개요  (0) 2026.06.19
'BI&Programming-Tools/Etc' 카테고리의 다른 글
  • VSCode에서 Git & GitHub 사용하기
  • Git 기초 & 버전 관리
  • [생물정보학] Biopython 기초
  • 생물정보학을 위한 파이썬 라이브러리 개요
데이터로 읽는 생명
데이터로 읽는 생명
is-note 님의 블로그 입니다.
  • 데이터로 읽는 생명
    In Silico Note
    데이터로 읽는 생명
  • 전체
    오늘
    어제
    • 분류 전체보기 (190) N
      • Bio-Knowledge (16)
        • 분자생물학 & 유전학 기초 (0)
        • 전사체학 & 유전자 발현 (0)
        • 구조생물학 & 단백질 (0)
        • 싱글셀 & 다중오믹스 (0)
        • 임상유전학 & 질환 데이터 (0)
      • Programming (4)
        • API (4)
      • BI&Programming-Tools (111)
        • File Formats (14)
        • Linux & Bash Script (38)
        • Python (35)
        • R (11)
        • 통계 (8)
        • Pipeline Manager (0)
        • Etc (5)
      • Bio Data Analysis (28) N
        • 서열분석개론 (6)
        • WGS(Whole Genome Seq) (11)
        • WES(Whole Exome Seq) (2)
        • RNA-Seq (4) N
        • Metagenome (2)
        • Non-human Resequencing (1)
        • 임상유전체 분석 (1)
        • Multi-Omics (1)
      • Bio-Trends & Tech (1)
      • 코딩테스트 연습 (30)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    파이썬기초
    bioinformatics
    R
    통계
    FASTQ
    GATK
    fasta
    wgs
    리눅스기초
    R기초
    파일포맷
    분자생물학
    데이터분석
    파이썬연습
    생물정보학
    파이썬
    리눅스
    유전체분석
    코딩테스트
    ngs
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
데이터로 읽는 생명
GitHub 사용법 & 잔디 심기
상단으로

티스토리툴바