[Aiffel] Github 깃허브 기본 사용법

Gongsam·2022년 4월 25일
0

Git 기본 명령어

# 현재 폴더 확인
pwd
# 폴더 안에 있는 요소 확인
ls
# 폴더 안에 있는 요소 중 숨겨진 요소까지 확인
ls -al

# 초기화
git init
# 파일 추가
git add 파일이름
# commit message 추가
git commit -m "커밋할 내용"
# 변경 내용 확인
git log
# remote 설정 -> 복붙 잘못하면 에러날 때 있음. 붙여넣기는 shift + insert
git remote add remote이름 주소
# push
git push remote이름 branch이름
# branch 생성
git branch branch이름
# branch 이동
git checkout branch이름
# merge : 기준이 되는 branch로 이동 뒤 실행, 
git merge branch이름

Github 사용법


협업 시 기본 순서

  1. 이슈 탭에 할 일 작성 (깃허브)
  2. 프로젝트 진행 (개인 colab 등)
    1. 초기 (한 번만 하면 됨)
      1. git clone '레퍼지토리 주소’
    2. pull: github 레포지토리에서 변경된 내용을 반영하기 위함 (안하면 충돌날 가능성 높음!!)
      1. git pull
    3. 브랜치 생성 및 이동
      1. git branch branch이름
      2. git checkout branch이름 (생성한 브랜치로 이동)
    4. 파일 작성
    5. add, push: 파일 작성 끝난 후 깃허브에 업로드 하는 과정
      1. git add 파일 이름
      2. git commit -m ‘커밋 메세지’
      3. git push
  3. Github에서 pull request가 생성됨
    1. 확인하고 merge

1) 깃허브에서 clone 하기

  • 로컬

    • 로컬의 원하는 위치에 git clone 주소 명령어를 실행하면 레퍼지토리가 복사되고, 깃허브 상의 레퍼지토리와 연동해서 쓸 수 있음
      • Download ZIP과의 차이점: 폴더(깃허브 상 레퍼지토리)가 로컬 상에 저장되는 것은 같음. 하지만 Download ZIP을 할 경우 폴더만 다운되지 깃허브의 본래 레퍼지토리와 연결되는 것이 아니기 때문에 따로 연결을 위한 설정 과정이 필요함
  • 🥨🥨🥨구글 드라이브🥨🥨🥨

    1. 깃허브 상에서 레퍼지토리 생성

    2. 구글 드라이브 상에 깃허브에 올릴 용도의 폴더 생성

    3. 구글 드라이브에서 파일을 생성해 필요한 내용을 작성

    4. 왼쪽의 파일 모양을 클릭한 후 분홍색으로 색칠한 버튼을 클릭해 드라이브 마운트

      • 혹은 다음 명령어 실행
        from google.colab import drive
        drive.mount('/content/drive')
    5. 드라이브 내에서 생성해둔 폴더로 이동

      • 셀에서 !cd /content/drive/MyDrive/폴더명 입력 후 실행
    6. Github Access Token 생성

      기존엔 비밀번호 인증방식으로 가능했지만 현재 연동을 위해서 토큰 발급이 필요함

      Build software better, together

      위의 사이트에 들어가 진행


      • Personal access tokens 선택 후 오른쪽의 Generate new token 선택
    7. colab으로 이동 후 셀 내에 다음과 같이 작성

      꼭 변수에 저장해야하는 것은 아니지만 편의를 위함

      path = '/content/drive/MyDrive/폴더명'
      username = '깃허브 닉네임' # '' 안에 써줘야함
      token = '자신의 토큰' # '' 안에 써줘야함
      
      repository = '깃허브의 레퍼지토리' # '' 안에 써줘야함
      
      git_path = 'https://'+token+'@github.com/' +username + '/' + repository+'.git'
      print(git_path) #확인용
    8. git clone 진행

      %cd path #%인 것 주의
      !git clone "{git_path}" # 꼭 "" 안에 {}를 쓰고 {}안에 변수 써야함

2) Issue 발행하기

  1. Issue 탭에서 New issue 초록색 버튼 클릭
  2. Custom issue template 클릭 (미리 작성해둔 issue template을 불러와 작성 가능)
  3. 원하는 내용을 작성한 뒤 Submit new issue 초록색 버튼 클릭
  4. 작성 완료된 페이지, 이슈 번호 (밑의 사진 상에선 #7) 확인 가능
  5. 이슈탭에 작성한 사항을 진행해 PR까지 끝낸 경우
    메세지를 작성한 뒤 Close issue를 클릭
  6. 이후 Closed에서 확인 가능

3) 프로젝트 진행

주의할 점: 항상 branch 확인하기 엉뚱한 branch에서 작업하고 merge하면 충돌 발생

  1. 브랜치 생성 및 이동
```python
# 현재 있는 브랜치 확인
!git branch 

# 브랜치 생성
!git branch branch이름

# 브랜치 이동
!git checkout branch이름 (생성한 브랜치로 이동)
```
  1. pull:

    github 레포지토리에서 변경된 내용을 반영하기 위함 (안하면 충돌날 가능성 높음!!)

    !git pull
  2. 파일 작성

  3. add, push: 파일 작성 끝난 후 깃허브에 업로드 하는 과정

    # add
    !git add 파일 이름
    
    # commit message 추가
    # 이때 #이슈넘버의 형식으로 입력하면 issue 탭으로 바로 이동할 수 있는 하이퍼링크가 생김
    !git commit -m ‘커밋 메세지’
    
    # 최종적으로 레퍼지토리에 업로드
    !git push

    이슈넘버를 작성 시 해당 이슈로 바로 이동 가능

4) Pull-Request(PR) 생성

  1. 앞서 언급된 방식대로 진행하면 사진과 같은 노란색 박스가 생김

    Compare & pull request 버튼 클릭

  1. 이번 작업에서의 업데이트 내용을 작성하면 됨

    • 보통 형식을 미리 정해두고 따라 쓰는 편

    • 오른쪽의 Assignees, Labels 설정

      • Assignees: PR을 연 사람
      • Labels: 업데이트 사항
    • Create pull request 클릭

  2. 다음과 같은 화면으로 넘어감

  • 여기서부터는 레퍼지토리의 작업자 모두가 볼 수 있는 화면

  • 확인한 사람은 Merge pull request 버튼을 눌러 Merge 진행

  • Merge pull request 버튼을 누르고 나면 Delete branch 버튼이 생김, 필요에 따라 남겨두거나 지움

    코멘트를 남길 수 있음. 코멘트를 남김과 동시에 PR도 가능

profile
🐬 파이썬 / 인공지능 / 머신러닝

0개의 댓글