4. GitHub 사용하기

최준영·2022년 2월 12일
0

Git & GitHub

목록 보기
5/13
post-custom-banner

1. 깃허브란?

  • Git으로 관리되는 프로젝트의 원격 저장소이다.
  • Git으로 관리하는 프로젝트들을 온라인 공간에 공유해서 프로젝트 구성원들이 함께 소프트웨어를 만들 수 있도록 도와주는 서비스이다.
  • 깃허브 등의 온라인 git 서비스들은 모든 업로드와 다운로드를 커밋 단위로 주고받는다.
  • 파일을 수정하고 깃허브에 커밋해서 올리기 위해서는, 반드시 깃허브상에 최신 커밋을 먼저 다운로드 받아서 본인 컴퓨터에 적용을 해야한다.
  • 커밋상에 충돌사항이 있으면 해결하고 병합한 다음에 자기가 작업한 커밋을 공유공간에 올릴 수 있다.

2. GitHub 시작하기

  1. 회원가입 후 로그인
  2. Personal access token 만들기
  • 우측 상단의 프로필 - Settings
  • Developer Settings
  • Personal access tokens - generate new token
  • repo 및 원하는 기능에 체크, 기간 설정 뒤 Generate token
  • 토큰은 안전한 곳에 보관
  1. 토큰을 컴퓨터에 저장
  • windows 자격 증명 관리자 - windows 자격 증명 선택
  • git:https://github.com에 자격 정보 생성
  • 사용자명과 토큰 붙여넣기
  1. 소스트리에도 추가
  • 도구 - 옵션 - 인증 선택
  • github.com 선택
  • 편집 클릭 후 토큰 입력
  1. 깃허브에 새 레포 생성

3. 원격 저장소 사용하기

  1. 원격 저장소의 코드를 새로 가져오는 경우
  • 터미널이나 Git Bash에서 대상 폴더로 이동 후git clone 원격저장소코드
  • DownLoad ZIP으로 하면 Git 관리내역을 제외하고 파일들만 다운받는다.
  1. 깃으로 관리하고 있는 파일이 있는 경우
  • 터미널이나 Git Bash에서 대상 폴더로 이동
  • …or push an existing repository from the command line의 코드 입력
  1. 원격 저장소와 로컬 둘다 깃으로 새로 만드는 경우
  • 터미널이나 Git Bash에서 대상 폴더로 이동
  • …or create a new repository on the command line의 코드 입력
  • git remote : 원격 목록 보기

4. push와 pull

1) 원격으로 커밋 올리기(push)

  1. 로컬에서 작업 후 커밋(git add . - git commit -m "메시지")
  2. git push 입력

2) 원격의 커밋 당겨오기(pull)

  1. 로컬에서 작업 후 커밋
  2. git pull 입력

3) pull 할 것이 있는데 push하는 경우

  • 먼저 pull해서 원격 버전을 받아온 다음 push가능
  • push할 것이 있을 때 pull 하는 방법
    1. git pull --no-rebase : (origin/main과 main 간) merge 방식
    2. git pull --rebase : rebase 방식, 이 경우는 협업시 사용해도 무방하다.
    3. git push --force : 원격 커밋을 무시하고 강제 적용

5. 원격의 브랜치 다루기

1) 로컬에서 브랜치를 만든 후 원격에 push

  1. 로컬에서 브랜치 생성
  2. 해당 명령어로 원격에 push : git push -u origin 생성된브랜치명
  • git push를 하는 경우 대상을 명시하라는 메시지가 나타남
  • git branch --all 또는 git branch -a로 로컬, 원격 브랜치 확인 가능

2) 원격의 브랜치를 로컬에 받아오기

  1. GitHub에서 브랜치 생성
  2. git fetch 입력 후 원격 브랜치 확인 가능
  3. 해당 명령어로 로컬에 같은 이름의 브랜치를 생성하여 연결하고 switch : git switch -t origin/from-remote

3) 원격의 브랜치 삭제

  1. git push 원격이름(ex. origin) --delete 원격의브랜치명
  2. 로컬 브랜치도 삭제

  • 소스트리에서는 코드 입력을 클릭으로 대체한다고 보면 될 것 같다.
profile
do for me
post-custom-banner

0개의 댓글