새소식

TIL

[TIL] 240415 Git & Github 사용(1)

  • -

 

1.  필수 리눅스 명령어 (git 명령어 아님)

  • pwd (print working directory) : 현재 내가 작업하는 폴더를 보여줌
  • ls (list) : 내 폴더 안에 있는 폴더&파일 내역 보여줌
  • ls -a (list all) : 숨겨진 파일(보통 .으로 시작함)도 모두 볼 수 있음
  • cd 폴더명 (change directory) : ls 명령어에서 확인된 폴더로 이동 가능
    - cd .. : 상위폴더로 이동(한단계 위)
    - cd 폴더명/폴더명 : 한번에 더깊이
  • mkdir 폴더명 (make directory) : 현재 경로에서 폴더를 생성
  • touch 파일명 : 현재 폴더에서 파일을 생성하는 명령어
    - 해당 이름을 가진 파일이 없으면 생성 / 있으면 파일의 날짜, 시간 변경

 


 

2. Git & Github의 개념

- Git : 코드 변경점 기록(버전 관리 도구)

- Github : 온라인 백업,공유,협업(온라인 코드 저장소)

 

 


 

3. Git 필수 명령어

  • git init : 코드 관리를 시작 (초기 세팅)
    - 프로젝트 시작 전 딱 한번만 입력하면 됨(여러번해도 문제는 없음)
    - (중요) 정확한 프로젝트 폴더(경로)에서 입력해야함
    - 입력 시 .git 폴더 생김 ( ls -a 입력 시 숨겨진 파일보임)
    - .git 폴더에서 코드변경점을 계속 추적&기록함 ( ⭐정확한 프로젝트 경로에 있어야 함)




    <<<코드를 저장하는 명령어>>>
    1.
    git add 파일명 : 저장하기 전 저장할 파일 지정
       - git add . : 현재 나의 경로의 모든 변경된 사항 한번에 지정
    2. git commit -m "메시지 작성" : 실제로 저장하는 명령어

    *
    (1) 파일 수정 시 : working directory
    (2) add 후 : staging area
    (3) commit 후 : repository



  • git status : 변경 상태 확인 (저장 여부 확인)
    - 코드 변경 있는데 저장안된파일 빨간색으로 표시됨
  • git log : 저장 내역 확인 (commit했던 내역들 볼 수 있음)
    - 커밋 메시지로 코드 변경점 추측 가능
    - 커밋 아이디로 git diff 코드변경확인 / git reset 과거로 돌아가기 가능
    - q로 빠져나오기

  • git push : 추가로 수정된 코드 github에 반영하기
  • git clone <깃허브 주소> .  : 코드 복사해오기
    (. 안쓰면 내 폴더 내에 폴더가 또 생성되어서 그 폴더로 또 cd해서 해야함)
  • git pull : 다른 사람이 변경한 코드를 내 코드에도 가져오기

 



4. Github로 코드 백업하기

*처음에 올릴 때!!*
(1) Github repository 생성
(2) vscode의 터미널 창에 아래의 명령어 입력

git remote add origin <깃허브 레포지터리 주소> : 깃허브 주소를 origin이라는 이름으로 저장
(아래에서 쓰이는 origin = 깃허브 주소)
git branch -M main (기본 브랜치명을 main으로 바꿈)
git push -u origin main (-u : 매번 "git push origin main"할 필요 없이 "git push"로 가능하게)

 


(3) *추가로 수정된 코드 반영하기*

코드 수정 - 코드 저장 명령어(add&commit) - git push origin 브랜치명

 

 


 

5. Github 협업 & 충돌 해결법

 

(1) collaborator 등록하기
(2) 코드 복사해오기 - git clone <깃허브 주소> .   (뒤에 . 없으면 내 폴더 내에 폴더 또 생성됨)

(3) 다른 사람이 변경한 코드를 내 코드에도 가져오기 - git pull origin 브랜치명(main)

※ 경고문 오류 발생 시 일단 지금은 merge

git config pull.rebase false

git pull origin 브랜치명 (다시 입력)

vim에디터 뜨면 나가려면 esc누르고 :wq 입력 후 엔터

 

 

- <충돌(conflict) 발생 이유> : collaborator와 같은 파일의 같은 위치의 코드가 변경되었기 때문
 : 충돌 코드 수정 - 코드 저장 명령어(add&commit) - git push origin 브랜치명

 

 

 

'TIL' 카테고리의 다른 글

[TIL] 240424 <자바> 클래스  (0) 2024.04.24
[TIL] 240423 <자바> 연산자,조건문,반복문,배열,컬렉션  (0) 2024.04.23
[TIL] 240422 <자바> JVM,변수  (0) 2024.04.22
[TIL] 240419 웹 기초  (0) 2024.04.19
[TIL] 240416 TIL 작성법  (0) 2024.04.19
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.