0430 TIL

Hwi·2024년 4월 30일

TIL

목록 보기
13/96

오늘은 Git 특강을 들었다! 한 2주 전에 올린 기본적인 Git에 관한 TIL은 작성한 적이 있는데, 그때 다룬 내용보다 좀 더 심화 과정인 거 같다

오늘 배운 Git 명령어 3가지를 간략하게나마 정리

1. Git switch

  • 다른 브랜치로 이동하고 싶을 때 사용하는 명령어이다.
    예를 들어 방금 만든 profile 브랜치로 가고 싶다면 예시는

    Git switch profile

이런 식으로 Git switch 브랜치명 으로 입력하면 된다.

2. Git branch

  • 브랜치를 새로 만들 때 사용하는 명령어이다.
    예를 들어 cookie 라는 브랜치를 만들고 싶다면

    Git branch cookie

위와 같이 Git branch 브랜치명 으로 입력하면 된다.

3. Git merge

  • 브랜치를 합치는 명령어이다.
    예를 들어 위에서 만든 cookie 브랜치에서 작성한 코드가 마음에 들어서 메인에다 합치고 싶다? 그렇다면 아래와 같이 작성하면 된다.

    Git merge cookie

보통의 명령어들은 명령어 + 브랜치명으로 사용이 가능하다
저렇게 써준다면 cookie 브랜치의 코드가 main 브랜치에 합쳐질 것이다

* 합칠 때 주의사항

보통 2가지 상황이 있는데,
1. 서로 다른 파일을 수정했을 때
2. 서로 같은 파일을 수정했을 때

이럴 때 1번의 상황 같은 경우, 충돌없이 무탈하게 잘 병합할 수 있겠지만 문제는 2번의 상황인 것이다.

a와 b가 c라는 같은 파일을 수정했을 때, a가 1~200번째줄
b가 50~200번째줄을 수정했다고 가정하면 이대로 merge를 시켜버리면 50~200번째줄 사이의 코드가 뒤죽박죽이 될 게 뻔하니 이럴 때 Git은 merge를 실행시켜주지 않고 a와 b에게
수정해줄 것을 요구한다.

이러한 충돌을 "conflict 충돌" 이라고 부른다.

이러한 상황을 방지하기 위해선
브랜치의 변화를 지속적으로 자신의 브랜치로 땡겨와서 충돌나는 부분이 있다면 제거해가면서 작업을 하는 수 밖엔 없는 거 같다..ㅠㅠ

profile
개발자가 되고 싶어~~~

0개의 댓글