본문 바로가기

Git7

Git cherry-pick 활용하기 git cheery-pick은 다른 브랜치의 특정 커밋을 선택적으로 적용할 때 사용하는 명령어이다. cherry-pick을 직접 사용해보는 경험을 포스팅할 것이다. 주의사항cheery-pick은 새로운 커밋을 생성하므로 커밋이 중복되거나 커밋 내역이 지저분해질 수 있다. 여러 브랜치사이에서 부분적으로 커밋을 적용하고 싶을 때 사용되지만 가능하면 전체 브랜치를 병합하는 것이 관리면에서는 깔끔할 수 있다. # 특정 커밋을 가져오는 명령어git cherry-pick 커밋해시# 범위를 설정하여 커밋을 가져오는 명령어(맨 처음 작성한 커밋해시는 적용되지 않는다. 그 이후의 커밋해시만 적용된다)git cherry-pick 커밋해시..커밋해시..커밋해시# 개별적으로 여러 커밋 가져오기git cherry-pick 커밋.. 2024. 9. 23.
Git 충돌 해결하기 Git을 사용하다보면 Merge와 Rebase 상황에서 충돌이 발생하는 경우가 생길 수 있다. 충돌이 일어나는 상황을 직접 만들어 본 후 문제를 해결할 것이다. Merge와 Rebase의 충돌이 일어나는 케이스는 대부분 비슷하기 때문에 하나의 시나리오를 가지고 진행할 것이다. 시나리오 : master 브랜치와 dev 브랜치에서 같은 파일을 서로 수정한 상황ㅇMergemaster 브랜치에 text.txt 파일을 준비한다. 파일 안에는 "hi git"이라는 내용이 담겨 있다. 브랜치를 하나 생성 해준뒤 text.txt 파일을 master에서는 "hi"로 dev1에서는 "git"으로 수정하고 commit 후 merge한다. dev 브랜치에서 파일을 수정하고 커밋하는 과정이다. master 브랜치도 commit.. 2024. 9. 21.
Git merge와 rebase의 차이 merge와 rebase는 git에서 브랜치를 병합할 때 사용하는 두 가지 방법이다. 둘 다 코드베이스를 동기화하는데 사용되지만, 처리 방식과 결과가 다르다. ㅇ Merge(병합)merge는 두 개의 브랜치를 결합하여 하나의 커밋을 만들어낸다. 커밋 히스토리를 그대로 유지하면서 새로운 병합 커밋이 추가된다.  특징:커밋 히스토리 보존: 양쪽 브랜치의 커밋 기록이 그대로 유지된다.병합 커밋 생성: 두 브랜치를 병합할 때 별도의 커밋이 생성된다.협업 중 충돌 처리: 충돌이 발생할 경우, merge 시점에 해결하고 병합 커밋으로 기록된다.A--B--C(main)D--E(기능 브랜치)병합시A--B--C--F(브랜치가 합쳐진 시점의 새로운 커밋생성)D--E(기능브랜치) main 브랜치에 A,B,C 와 기능브랜치 .. 2024. 9. 9.
Git 일단 해보기(branch 이동) ㅇ git의 branch를 활용하는 연습 시나리오나만 사용하는 브랜치에서 작업중팀원의 부재 상황이 발생 팀원이 나에게 자신의 브랜치의 작업을 요청함내 브랜치 checkout 팀원브랜치 팀원의 브랜치의 프로젝트를 pull 팀원의 브랜치에서 작업 후 push다시 내 브랜치로 돌아온다.# 알아야 할 명령어# 원격 저장소의 최신 정보를 가져오는 명령어git fetch# 원격 저장소의 브랜치 목록 확인하기git branch -r# 원격과 로컬저장소의 브랜치 목록 확인하기git branch -a# 해당 브랜치로 체크아웃git checkout 브랜치명# 코드 가져오기git pull 원격저장소이름 브랜치명 ㅇ 실습하기 2024. 9. 9.
Git commit에 대해서 2024.08.30 - [분류 전체보기] - git 기초 사용법 git 기초 사용법※ 유튜브 유노코딩 채널의 '깃과 깃허브가 처음인 당신에게' 라는 강의 영상을 참고한 게시글입니다.https://www.youtube.com/watch?v=PwIei1tdHSU&list=PLFeNz2ojQZjv9dU2Z0YOfCGLI4CK3GSPd&index=1 ㅇ 로컬환경에서 새developbf.tistory.comgit의 기초에 대해 정리를 해본 적이 있다. 이번에는 git의 commit에 대해서 조금 더 자세하게 알아보기로 했다.되돌아가 commit에 대한 간단한 내용들을 확인해보자. ㅇcommit과 관련된 키워드스냅샷(snapshot)스냅샷은 특정 시점의 프로젝트 소스 코드의 특정 버전을 의미한다. 프로젝트의 변경 .. 2024. 9. 6.
Git 기초 사용법 ※ 유튜브 유노코딩 채널의 '깃과 깃허브가 처음인 당신에게' 라는 강의 영상을 참고한 게시글입니다.https://www.youtube.com/watch?v=PwIei1tdHSU&list=PLFeNz2ojQZjv9dU2Z0YOfCGLI4CK3GSPd&index=1 ㅇ 로컬환경에서 새 폴더를 생성하여 git 저장소로 초기화 시키기# 로컬환경에 깃이 설치되어 있는지 확인하는 명령어git# 터미널에 표시된 내용을 정리한다clear# git의 전역설정으로 사용자 이름을 설정한다git config --global user.name "9mans"# 아래 명령어로 현재 이름을 조회 가능하다git config --global user.name# git의 전역설정으로 사용자 이메일을 등록한다git config --glob.. 2024. 8. 30.
Git flow git flow : 깃에서 제공하는 강력한 브랜칭 기능을 활용한 변경 이력 관리 전략이다(Branch 전략)Branch 전략: 여러 명의 개발자가 1개의 저장소를 사용하는 환경에서 Branch를 효과적으로 사용하기 위한 개념 git flow의 branch 종류: master : 제품으로 출시될 수 있는 브랜치(메인)develop : 다음 출시 버전을 개발하는 브랜치(메인)feature : 기능을 개발하는 브랜치(보조)release : 이번 출시 버전을 준비하는 브랜치 (보조)hotfix : 출시 버전에서 발생한 버그를 긴급 수정하는 브랜치 (보조)  관리 순서 예시repo를 생성(master 브랜치) ->개발 시develop 브랜치 생성 후 해당 브랜치에서 개발 진행 ->develop 브랜치에서 특정 기.. 2024. 8. 29.