728x90
반응형

2

git merge rebase squash

merge, rebase, squash는 모두 branch를 통합하는 방법이다.세 가지 방법의 차이가 뭔지 궁금해 조사하게 되었다. 1. git merge두 개의 브랜치를 하나로 합치는 방법.기존 브랜치의 변경 내역을 유지하면서 새로운 merge commit을 만든다.원래 커밋 히스토리를 유지할 수 있어 협업 시 브랜치 변경 이력을 보기 좋다.병합할 목표(main)로 이동해 병합할 대상(feature-branch)를 merge하면 된다.git checkout maingit merge feature-branch  2. git rebase한 브랜치의 변경 내역을 다른 브랜치 위로 다시 적용하는 방법merge commit 없이 히스토리를 깔끔하게 유지할 수 있다.원래의 브랜치 기반을 변경하는 것이기 때문에, ..

CS/형상관리 2025.03.10

[Git] submodule, subtree

프로젝트 개발을 진행하다보면, 간단한 소규모 프로젝트라면 문제 없겠지만개발 범위가 커질수록 레포지토리 하나로 관리하기 힘들어진다.특히, 앱1/앱2/서버1/ ... 이런식으로 하나의 역할에 대해서도 여러개로 쪼개진다면, 레포를 여러개 만들게 되는데 통합적인 부분을 관리하는 것이 몹시 힘들다. 코드가 중복될 가능성도 높아진다.이런 부분을 보완하기 위해 존재하는 것이 submodule이다. ㅇ submodule이란?submodule은 Git 저장소 안에 또다른 Git 저장소를 포함할 수 있는 기능이다.즉, 하나의 프로젝트 안에 다른 프로젝트를 넣어 독립적으로 관리할 수 있도록 만들어준다.- 여러 프로젝트가 같은 코드(공유 라이브러리)를 사용할 때- 별도로 관리되는 외부 프로젝트를 포함하여 사용할 때- 메인 프..

CS/형상관리 2025.03.04
728x90
반응형