김숭늉 마음대로

Section 6 - Git 요약 본문

IT/웹개발 (100일 도전)

Section 6 - Git 요약

김숭늉이 2023. 2. 18. 21:24
728x90

 

1. commit 은 브랜치에 저장된다.

    

 

2. git을 사용하기위해서는 터미널이 필요하다!

    ㄴ panel 기능 열어서 터미널 열기! -> 윈도우는 cmd 사용

 

 

 3. 터미널을 현재 폴더로 인식시키는 방법 -> 레퍼지토리를 초기화해야한다

   ㄴ git init

 

4. 터미널 화면 깨끗하게 만들기

   ㄴ clear

 

5.  git으로 관리되는지 확인하는 방법

   ㄴ git status

 

6. git add text.txt

   추적하려는 파일을 스테이징 구역에 추가하기 

   ** 스테이징구역은 파일이 모여있는곳

 

7. 커밋 추가하기 with 메시지와함께

     git commit -m "added text.txt"

 

8. Git를 처음사용하는 사용자인 경우에는 이름, 이메일을 업데이트 해주기!

  ㄴ 깃허브 이용시 추적 가능

   git config --global --edit

   이후 esc를 누르고 :x를 입력후 엔터  edit 기능 활성화됨 -> 다시 터미널로 돌아와서

   git config --global user.name 

   git config --global user.name"seungyeon kim"

   git config --global user.email

   git config --global user.email "jennyfromseoul@naver.com"

 

 

9.  커밋이 잘 반영되었는지 확인하는방법은 두가지

     git status

     git log 

    ** 모든커밋은 개별 id를 가지고 있음

 

10.    git status

  Changes not staged for commit

  Untracked files 

 

-> git add text.txt second-commit.txt

    이렇게 다 줄줄이 쓰면 번거롭잖아?

    git add . <- 이걸 사용하면, 추가된 파일과 변경된 내용 모두 스테이징영역에 추가시켜줌! 

    git commit- m"change text.txt and added second-commit.txt"  -> 이렇게 메시지도 꼭 필수로 넣어주고

 

 

11. 브랜치 확인하는 방법

    git branch 

 

12. 브랜치 이름 변경하는 방법

변경하고자 하는 브랜치에서 아래와 같이 작성한다 :)

    git branch -m main   -> main 이라는 이름으로 브랜치명을 변경해줘

 

13. 새브랜치 만드는 방법

    git checkout feature -> feature 브랜치로 이동할래

    git checkout -b feature  -> feature 이라는 브랜치를 새로 만들어줘

   ㄴ 새로운 브랜치는 기존의 브랜치에 기반해서 만들어짐

 

14. HEAD는 가장 최신 커밋을 이야기한다!

 

  git add .

  git commit -m "added new feature"

  git log 

 

 

15. 두개의 브랜치는 합치는 방법?

   git checkout main  일단 main으로 이동 git log로 상태를 확인하기

   git merge feature -> feature 브랜치를 main에 적용해

 

 

16. 충돌이 일어나면 어떤변경사항이 우선인지 결정을 해야한다

main에서 test.txt 

feature에서 test.txt

  ㄴ 각각 다르게 수정하였다면 충돌이 일어남!

     

 

17. 파일(디렉토리) 삭제 방법

   1)  마우스 오른쪽키 누르고 삭제하기

   2)  git rm -> 확실한 경로안에서 삭제 가능함 (커밋 스테이징영역에 자동 반영됨)

     ㄴ cd deleting-data

        ㄴ git rm file2.txt

 

18. 이전 커밋으로 돌아가는 방법

    git reset (HEAD 리셋)

    git reset --hard HEAD~1

     ㄴ 레포지토리에서 삭제, 및 스테이징영역에서도 삭제   

    git reset --hard HEAD~2 (숫자바꿀수있음)

      => 마지막 커밋을 브랜치에서 지움

 

19. 브랜치 삭제하기

    git branch (브랜치 위치먼저 확인하기)

    git branch -D feature

    

20. 스테이징되지않은 수정사항을 삭제하는 방법

 

   file1에서 컨텐츠를 추가하고 git status를 입력하면 스테이징 되지않은 수정사항이 나오는데 

   git checkout -- . 

   ㄴ 브랜치 마지막 커밋상태로 리셋함 

 

21. 스테이징된 수정사항 삭제하는 방법 

  1)  git restore -> 수정사항 반영안되게 하는것 

   2) git reset file.txt

        git checkout -- .  스테이징 되지않는 수정사항을 삭제

 

https://hajoung56.tistory.com/31

 

[GIT] git reset과 git revert

GIT을 사용하다 보면 이전 커밋으로 돌아가야 할 경우가 종종 생깁니다. 그럴 경우 사용할 수 있는 reset과 revert에 대하여 포스팅을 시작합니다. 1. reset과 revert의 개념과 차이점 reset : 과거의 특정

hajoung56.tistory.com

reset 아예 현재가 없었던 것처럼 원하는 과거로 돌아갈 수 있습니다. 말 그대로 '리셋'입니다. reset은 이력을 남기지 않습니다. 따라서 현재까지의 커밋 이력을 남기지 않고 원하는 시점으로 완전히 되돌아가고 싶을 때 사용합니다.

 

revert 과거로 돌아가겠다는 이력을 남기고 원하는 시점의 커밋으로 돌아갑니다. 즉, 이전의 커밋 내역을 남겨두고 새로운 커밋을 생성하면서 과거로 돌아갑니다.

 

Reset 명령은 커밋 히스토리를 깔끔하게 유지할 수 있고, 혼자 작업 시 편하게 되돌아갈 수 있다는 장점이 있습니다. 

그러나, 다른 이들과 같은 브랜치에서 함께 작업할 때 커밋이 뒤섞여버릴 수 있다는 단점도 존재합니다.

 

Revert 명령은 히스토리에 남게 되어 왜 돌아갔는지 등의 기록을 남길 수 있습니다. 또한 다른 이들과 협업 시 코드 충돌을 최소화할 수 있습니다.

 

728x90
반응형