new TIL. git & github

유자탱자🍋·2021년 2월 24일
0

오늘은 개발자에게 필수적인 툴, git과 github를 알아보고 github에 내가 작성한 코드들을 push, pr을 작성하는 법까지 배웠다👏

git과 github는 무엇일까?

git과 github의 차이점

  • git(Version Control System)
    : 프로젝트 파일의 버전을 추척하는 시스템
    : 내가 제작하고 수정한 파일들을 기록하여 원하는 버전에 언제든지 접근할 수 있다!
  • github
    : git을 사용한 프로젝트들을 관리할 수 있는(repository) 호스팅 플랫폼
    : 개발자들의 social network⭐️

    개발자만의 문화가 돋보이는 부분이라고 생각한다. 서로의 프로젝트를 자유롭게 살펴볼 수 있고 여러가지 아이디어를 주고 받을 수 있기 때문!



기본 명령어

git과 github는 터미널 명령어를 통해 접근할 수 있다. 첨에는 어렵지만, 여러 번 반복해서 익숙해지는 수 밖에!!!

  • git init : git 시작하는 명령어
  • git status : 현재 git 상태를 확인할 수 있는 명령어
  • git add : staging, 중간 저장을 할 수 있는 명령어. git add .로 전체 파일을 저장할 수 있다.
  • git commit -m "메시지" : 저장하는 명령어. 커밋 메시지는 해당 프로젝트의 진행 사항을 한눈에 알아볼 수 있도록 작성하는 것이 중요하다!(분류: 한줄 제목)
    참고_commit message guidelines
  • git log : commit 히스토리를 확인할 수 있는 명령어

기본적인 터미널 명령어
- cd 이동하고 싶은 경로(cd ::는 상위 폴더로 이동한다)
- mkdir 만들고 싶은 폴더
- ls 현재 폴더 내 확인
- touch 만들고 싶은 파일.확장자
- :wq는 저장



내 프로젝트 github에 업로드하기

프로세스를 한눈에 볼 수 있는 guide!(준식님 감사합니다🙇‍♀️)

1. clone

우선 처음으로는 github repository의 main(master)을 clone 한다.
git clone 가져오고자 하는 repository의 code

git clone과 git pull는 모두 github repository에서 local로 가져온다.
차이점은 git clone은 local에 아무것도 없는 상태에서 github repository 데이터를 가져오는 것을 의미하며,
git pull은 local에 이미 있고, github repository의 수정상태를 반영하기 위해 가져오는 것을 의미한다.

2. branch 생성

main(master)는 신성한👼 branch이기 때문에 새로운 branch를 생성한다.
내가 생성할 branch는 feature branch. feature branch는 토픽 branch의 역할을 담당한다.
git branch feature/branchname

3. 다른 branch로 이동

현재 나의 위치는 main branch(feature branch는 만들기만 한거다!)
이동하기 위해서는 췍아웃을 해야 된다😎
git checkout feature/branchname

현재 내가 위치하는 branch를 확인하고 싶다면 git branch. 터미널에서는 위치한 branch에 *이 표시된다.

4. 프로젝트 저장

github에 업로드하고 싶은 파일들을 옮긴 후 git add를 통해 staging 한다.(맨 뒤에 (스페이스).을 붙이면 전체 파일을 올릴 수 있다!)
staging 만 한다고 저장되는 것은 아니다. commit까지 완료하기!
git commit -m"분류: 한 줄 제목"

5. local에서 remote로 push

말 그대로 git에 담은 파일들을 local에서 remote로 push할 차례!
git push origin feature/branchname(origin에서 feature/branchname을 push한다)

6. PR(Pull Request)

push한 branch를 pull하도록 요청하는 과정. PR template을 github에서 작성하면 된다.
어떤 프로젝트인지, 어떤 수정사항이 발생했는지 다른 개발자에게도 잘 전달될 수 있도록 작성하는 것이 중요!

7. merge

admin 권한이 부여된 계정이 PR을 수락한다면 나의 코드들이 업데이트된다.

8. pull

협업하거나 오픈소스인 경우 github에 있는 파일들이 수정될 것이다.
그렇다면 git pull을 통해 업데이트된 repository 데이터들을 local로 다시 가져와 싱크를 맞춰주어야 한다!

0개의 댓글