Android/StoreInfo

git & github 정리(배운 것만)

re트 2023. 11. 24. 14:58
728x90

* 윈도우 사용자는 bash 혹은 git bash로 터미널을 사용해야한다. 안 그러면 git 명령어가 잘 안 먹을 때가 있다.

 

리눅스 명령어

1. pwd (print working directory) : 현재 내가 작업하는 폴더를 보여달라는 뜻

2. ls (list) : 내 폴더 안에 있는 폴더 & 파일 내역을 보여달라는 뜻

  - 폴더와 파일끼리는 색깔이 다르다.

3. ls -a (list all) : ls 명령어의 옵션 중 하나 숨겨진 폴더 & 파일(보통 .으로 시작하는 폴더 & 파일)까지도 보여달라는 뜻

4. cd 폴더명 (change directory) : 현재 폴더에 존재하는 폴더(ls 명령어로 확인한 폴더들 중 하나)로 이동해달라는 뜻

  - 현재 내가 작업하는 폴더가 변경되는 것

  - .. : 한 단계 위의 폴더 (ex. cd ..)

  - 폴더명을 /로 연결하여 적으면 한 번에 마지막에 적힌 폴더로 이동 가능

5. mkdir 폴더명 (make directory) : 현재 경로에서 폴더를 생성해달라는 뜻

6. touch 파일명 : 현재 경로에서 파일을 생성해달라는 뜻

  - 정확히는 파일의 생성과 파일의 날짜, 시간을 변경하는 명령어

 

Git 

1. Git이란?

  - 코드 변경점 기록

  - 버전 관리 도구 (형상 관리 도구)

  - 소프트웨어의 변경사항을 체계적으로 추적하고 통제하는 것

2. Git 필수 명령어

  1) git init : 코드 관리를 시작하는 명령어

    - 프로젝트 시작 전 딱 한 번만 입력

    -  정확한 프로젝트 경로에서 입력

    - 입력 후에 .git 이라는 숨겨진 폴더가 생성되는데 여기에서 코드 변경점을 계속 추적하고 기록

  2) git add 파일명 : 저장할 파일을 지정하는 명령어

    - git add . : 내 프로젝트의 변경사항을 한 번에 지정하는 방법(.은 현재 나의 경로의 모든 변경된 사항을 의미함)

  3) git commit -m "메세지 작성" : 실제로 파일을 저장하는 명령어

    - 메세지 부분은 최대한 자세하게 작성

    - Please tell me who you are 이라는 에러(계정 설정 관련 에러)가 발생한다면

      git config --global user.email "이메일" 과 git config --global user.name "이름" 을 터미널에 입력하면 된다.

  4) git status : 저장 여부를 확인하는 명령어

    - 수정됐지만 add 안 된 파일, 수정되고 add 된 파일, nothing to commit을 확인 가능

  5) git log : 저장 내역을 확인하는 명령어

    - 커밋 아이디, 작성자, 날짜, 커밋 메세지 확인 가능

    - 커밋할 때 썼던 메세지로 코드 변경점 추측 가능

    - git diff : 커밋 아이디를 가지고 코드의 변경을 확인 가능

    - git reset : 커밋 아이디를 가지고 과거로 돌아가기 가능

    - git log에서 빠져나올 때는 q 눌러서 빠져나오기

 

Github

1. Github란?

  - 백업과 공유, 협업이 가능한 온라인 코드 저장소

2. Github로 코드 백업하기

  1) 온라인 저장소(github repository) 만들기

    - 깃허브 홈페이지에서 진행

  2) 내 코드를 Github repository로 업로드하기

    - repository에서 push 관련 git 명령어들을 복사해서 터미널에 붙여넣기

      - git remote add origin <github 주소>

      - git branch -M main

      - git push -u origin main

3. 추가로 수정된 코드 github에 반영하기

  1) 코드 수정

  2) 코드 저장 명령어 실행

  3) git push origin 브랜치명

4. Github 협업하기 + 충돌 해결하기

  1) 협력자(collaborator) 등록하기

    - Github 레포지토리 -> Settoings -> Collaborators -> Add people -> username or email 입력

  2) git clone : 코드 복사해오기

    - 폴더 생성 -> git clone <github 주소> .

  3) 팀원들이 코드 올리기

    - 2.2) 와 순서가 같음

  4) git push 전에 git pull (origin main)

    - 다른 사람이 git push하고서는 바로 git push가 불가능

    - git pull 관련 에러 발생 시 git config pull.rebase false 입력하고 다시 git pull origin main 입력

  5) 충돌 해결하기

    - <<<<<<< HEAD 삭제하고 ======= 삭제하고 >>>>>>> (커밋아이디) 삭제하고 원하는 코드로 수정하면 됨

    - 이후 2.2) 순서대로 다시 push까지 진행

반응형