Git(10)
-
[Git] PR 커밋 해시를 활용한 브랜치 생성 : 쉽고 간단한 가이드
가끔 코드 리뷰나 협업 과정에서 특정 PR의 커밋 해시를 로컬 환경에서 확인해야 할 때가 있습니다. 이 글에서는 원격 저장소에서 해당 커밋을 로컬로 가져와, 그 해시를 기반으로 브랜치를 생성하는 방법을 설명하겠습니다.git fetch로 원격 저장소 업데이트먼저, 원격 저장소에서 최신 정보를 로컬로 가져와야 합니다. 원격 브랜치에서 최신 커밋들이 로컬에 반영되지 않은 경우가 많기 때문이죠.git fetch origin 이 명령어는 원격 저장소(origin)에 있는 모든 브랜치와 태그 정보를 로컬에 업데이트합니다. 이렇게 하면 나중에 필요한 특정 커밋 해시도 로컬에서 접근할 수 있게 됩니다. 해당 커밋 해시가 있는지 확인하고 직접 체크아웃먼저 해당 해시가 로컬에 존재하는지 확인하려면, git log 명..
2024.10.23 -
[Git] GitHub에서 Squash Merge로 프로젝트 히스토리 깔끔하게 정리하기
Git의 다양한 병합(merge) 방법 중 하나인 Squash Merge에 대해 알아봅시다.Squash Merge (스쿼시 머지) 란?여러 커밋을 하나의 커밋으로 압축(squash)하여 병합하는 Git의 기능입니다. 이를 통해 개발 브랜치에서 작업한 여러 개의 작은 커밋을 한 번에 메인 브랜치에 병합할 수 있습니다. 이 방법은 깔끔한 커밋 히스토리를 유지할 수 있게 합니다.다이어그램을 통해 Squash Merge 이해하기기본 main 브랜치에서 feature 사본 브랜치를 생성하여 작업을 시작합니다. feature 브랜치에서 여러 개의 커밋을 생성합니다.main: A---B---C \feature: D---E---F feature 브랜치의 모든 커밋을 하나의 커밋..
2024.07.07 -
[Git] 2가지 방법으로 변경사항 가져오기 (feat. git checkout, git cherry-pick)
코드를 관리하는 과정에서 이전 상태로 돌아가야 할 때나 다른 브랜치에서의 변경 사항을 현재 브랜치로 가져와야 할 때가 있습니다. 이럴 때 사용하는 주요 명령어에 대해서 살펴보겠습니다. git checkout으로 파일 가져오기 이전 커밋 상태로 되돌리는 명령어입니다. --를 사용하여 git에게 파일 이름으로 해석하라고 명시적으로 알려줍니다. git checkout HEAD~1 -- [경로/파일명] git checkout 명령어를 사용하여 파일을 이전 커밋의 상태로 가져오면, 해당 파일의 현재 상태는 이전 커밋의 상태로 완전히 교체됩니다. 그러므로 충돌이 발생하지 않습니다. 주의할 점은 현재 작업 디렉토리에 변경 사항이 있는 경우, 해당 파일을 checkout 하기 전에 변경 사항을 stash에 잠시 보..
2024.03.24 -
[Git] Git Stash : 변경사항을 임시로 저장하는 방법
보통 개발자들은 여러 작업을 동시에 진행하거나, 작업 중에 예기치 않은 변경이 필요할 때가 있습니다. 이런 상황에서는 현재 작업 중인 변경사항을 커밋(commit)하기 전에 보관할 필요가 있습니다. 여기서 git stash가 유용하게 사용됩니다. 이를 알아봅시다. Stash 활용 예시 개발 중, 갑자기 다른 브랜치로 전환해야 하는 상황이 발생했다고 해봅시다. 이때 현재 작업 중인 변경사항을 임시 저장하고 싶을 것입니다. 이때 stash를 사용하면 됩니다. 왜냐하면 커밋하지 않은 변경사항이 남아있는 상태에서는 브랜치를 전환할 수 없기 때문에 stash 기능으로 잠시 저장하고 나중에 다시 돌아와서 이를 다시 적용할 수 있습니다. 커밋을 하지 않은 이유로는 아직 완료되지 않은 작업이나 실험적인 변경사항이었다..
2024.03.20 -
[Git] Git 리베이스: 작업 브랜치의 변경 사항을 최신 상태로 유지하는 방법
소프트웨어 개발에서 협업은 중요한 요소입니다. 하지만 여러 명이 같은 코드베이스에서 작업하다 보면 복잡한 작업 흐름과 충돌이 발생할 수 있습니다. Git에서 제공하는 리베이스(Rebase)는 이러한 문제를 해결하고, 작업 흐름을 보다 체계적으로 관리할 수 있게 도와줍니다. 이번 포스트에서는 rebase에 대해 알아봅시다. Rebase란? Rebase는 Git에서 브랜치를 다른 브랜치의 기준으로 옮기는 것을 의미합니다. 이는 브랜치의 커밋 기록을 변경하거나 재정렬하는 과정입니다. Rebase를 하면 현재 브랜치의 commit(커밋)들을 다른 브랜치 위에 올려놓고, 마치 그 브랜치에서 직접 커밋한 것처럼 보입니다. 브랜치의 커밋 history(기록)를 깔끔하게 유지하기 위해 사용됩니다. 여러 명이 함께 작업..
2024.03.19 -
[Git] GitHub에서 Pull Request(PR) 올리는 방법: 초보자를 위한 안내
GitHub은 소프트웨어 개발에서 핵심적인 역할을 하는 플랫폼으로, 오픈 소스부터 기업용 프로젝트까지 다양한 협업 공간으로 자리 잡고 있습니다. 그중에서도 Pull Request(PR)는 프로젝트에 기여하고 협업하는 데 중요한 역할을 합니다. 이 포스트에서는 GitHub에서 PR을 올리는 방법에 대해 알아보겠습니다. PR 생성하기(Create pull request) Pull Request(PR)은 코드 변경 사항을 다른 개발자들과 공유하고 검토받는 기능입니다. 이를 통해 우리는 코드를 함께 개선하고 품질을 높일 수 있어요~ Github 저장소에 로그인하시고, 상단 메뉴에 Pull requests 탭을 클릭합니다. New pull request 버튼을 클릭하여 새로운 PR을 생성합니다. compare 드..
2024.03.18