스택큐힙리스트

Git에서 마스터 브랜치를 다른 브랜치로 완전히 교체하는 방법은 무엇인가요? [중복] 본문

카테고리 없음

Git에서 마스터 브랜치를 다른 브랜치로 완전히 교체하는 방법은 무엇인가요? [중복]

스택큐힙리스트 2024. 1. 18. 13:53
반응형




내 Git 저장소에는 두 개의 브랜치가 있습니다:



  1. master

  2. seotweaks (원래 master에서 만들어짐)

나는 seotweaks를 빠르게 master로 다시 병합하기 위해 만들었습니다. 그러나 그것은 3개월 전의 일이었고, 이 브랜치의 코드는 master보다 13개 버전 앞선 상태입니다.


실제로, 우리는 이제 master에 있는 코드가 모두 거의 사용되지 않는 것으로 취급되므로, 이것은 우리의 작업용 주요 브랜치가 되었습니다.


매우 좋지 않은 방법이라는 것을 알고 있습니다, 배운 교훈입니다.


master 브랜치의 모든 내용을 seotweaks의 내용으로 대체하는 방법을 아십니까?


그냥 master에서 모든 것을 삭제하고 병합할 수도 있겠지만, 이는 최선의 방법이 아닌 것 같습니다.

답변 1

당신은 ours 병합 전략을 사용하여 seotweaks로 master를 덮어쓸 수 있어야 합니다:


git checkout master
git pull
git checkout seotweaks
git merge -s ours master
git checkout master
git merge seotweaks

첫 두 단계는 로컬 복사본이 최신 상태인지 확인하기 위한 유용한 예방 조치입니다. 결과적으로 당신의 마스터는 이제 본질적으로 seotweaks입니다.


(-s ours--strategy=ours의 약어입니다.)


'ours' 전략에 관한 문서에서:



이는 병합의 어떤 수의 헤드도 해결하지만, 병합의 결과 트리는 항상 현재 브랜치 헤드의 트리이며, 모든 다른 브랜치의 변경을 무시합니다. 이는 사이드 브랜치의 이전 개발 기록을 대체하는 데 사용되도록 설계되었습니다. 이는 재귀적 병합 전략의 -Xours 옵션과는 다릅니다.


통지 내용 업데이트: 만약 refusing to merge unrelated histories 오류가 발생한다면, 두 번째 줄을 다음과 같이 변경하세요: git merge --allow-unrelated-histories -s ours master

답변 2

본문: Git에서 마스터 브랜치를 다른 브랜치로 완전히 교체하는 방법
마스터 브랜치를 다른 브랜치로 완전히 교체하는 방법은 Git에서 매우 유용한 작업입니다. 이 과정을 수행하려면 다른 브랜치의 변경 사항을 마스터 브랜치에 병합하고 실행 중인 작업을 완료한 다음 마스터 브랜치로 변경해야 합니다. 이렇게 하면 원하는 변경 사항을 마스터 브랜치에 반영할 수 있습니다.
첫 번째 단계는 변경 사항을 원하는 브랜치에 병합하는 것입니다. 이 단계에서는 다음 명령을 사용하여 동기화할 브랜치로 이동합니다.
```shell
git checkout [동기화할 브랜치]
```
이 제목의 SEO 최적화를 위해 Git에서 마스터 브랜치 완전히 교체하는 방법을 사용하여 검색 키워드를 강조하도록 하겠습니다.
다음으로, 변경 사항을 마스터 브랜치와 병합합니다. 아래의 명령어를 실행하여 원하는 브랜치의 변경 사항을 마스터 브랜치에 반영합니다.
```shell
git merge [원하는 브랜치]
```
병합 과정에서 충돌이 발생할 수 있으며, 이러한 충돌을 해결해야 합니다. 충돌이 발생하면 Git은 충돌 지점을 기준으로 변경 사항을 표시하고 충돌을 해결할 수 있는 도구를 제공합니다. 충돌을 해결한 후 변경 사항을 커밋합니다.
다음으로, 원하는 병합 작업을 모두 완료한 후 마스터 브랜치를 강제로 업데이트합니다. 다음 명령을 사용하여 마스터 브랜치로 이동한 다음 다른 브랜치의 내용을 마스터 브랜치로 덮어씁니다.
```shell
git checkout master
git reset --hard [원하는 브랜치]
```
위의 명령은 마스터 브랜치를 지정된 브랜치로 완전히 바꿀 것입니다. 이전의 모든 변경 사항은 사라지고, 지정된 브랜치의 최신 커밋 내용이 적용됩니다.
이제 Git에서 마스터 브랜치를 다른 브랜치로 완전히 교체하는 방법을 알게 되었습니다. 이 공정을 거치면 마스터 브랜치에 다른 브랜치의 변경 사항을 쉽게 반영할 수 있습니다. 프로젝트에서 마스터 브랜치를 교체하는 경우, 위의 단계를 따라 실행하여 Git 작업을 완료하십시오.
참고: 이 문서는 Git에서 마스터 브랜치를 다른 브랜치로 완전히 교체하는 방법이라는 주제에 대한 SEO 최적화된 한국어 에세이로 작성되었습니다. 이 주제에 대해 빠뜨린 내용이 있다면 죄송합니다.

반응형
Comments