728x90
반응형

rebase 5

Git이 rebase에서 관련 없는 기록을 병합하는 것을 거부할 때

질문 : 리베이스에서 관련없는 기록을 병합하는 것을 거부하는 Git git rebase origin/development 중에 Git에서 다음 오류 메시지가 표시됩니다. fatal: refusing to merge unrelated histories Error redoing merge 1234deadbeef1234deadbeef 내 Git 버전은 2.9.0입니다. 이전 버전에서는 잘 작동했습니다. 새 릴리스에 도입 된 강제 플래그로 관련없는 기록을 허용하는이 리베이스를 계속하려면 어떻게해야합니까? 답변 Git 2.9 이후 기본 동작이 변경되었습니다. "git merge"는 기본적으로 공통 기반이없는 두 브랜치를 병합하는 데 사용되었습니다. 이로 인해 기존 프로젝트의 새로운 기록이 생성 된 다음 의심하지 ..

개발관련/Git 2021.12.08

git cherry-pick "...38c74d is a merge but no -m option was given"

질문 : git cherry-pick은 "… 38c74d는 병합이지만 -m 옵션이 제공되지 않았습니다"라고 말합니다. 마스터 브랜치에서 몇 가지 변경을 수행했으며이를 업스트림으로 가져오고 싶습니다. 내가 다음 커밋을 체리 선택하면. 그러나 나는 git이 말하는 fd9f578에 붙어 있습니다. $ git cherry-pick fd9f578 fatal: Commit fd9f57850f6b94b7906e5bbe51a0d75bf638c74d is a merge but no -m option was given. git은 나에게 말하려는 것이 무엇이며 여기에서 사용하기에 적합한 것을 체리 선택합니까? 마스터 브랜치에는 업스트림 브랜치에서 수정 된 파일에 대한 변경 사항이 포함되어 있으므로 병합 충돌이있을 것이라고 ..

개발관련/Git 2021.11.10

Git을 사용하여 마지막 X 커밋을 함께 스쿼시

질문 : Git을 사용하여 마지막 X 커밋을 함께 스쿼시 Git을 사용하여 마지막 X 커밋을 하나의 커밋으로 어떻게 스쿼시 할 수 있습니까? 답변 git rebase -i 사용하고 매뉴얼에 설명 된대로 두 번째 및 후속 커밋에서 "pick"을 "squash"또는 "fixup"으로 바꿉니다. 이 예에서 은 SHA1 해시이거나 rebase 명령에 대해 커밋이 분석되는 현재 분기의 HEAD에서 상대적 위치입니다. 예를 들어, 사용자가 과거에 현재 HEAD에서 5 개의 커밋을보고 싶다면 명령은 git rebase -i HEAD~5 입니다. 출처 : https://stackoverflow.com/questions/5189560/squash-my-last-x-commits-together-using-git

개발관련/Git 2021.11.03

'git merge'와 'git rebase'의 차이점

질문 : 'git merge'와 'git rebase'의 차이점은 무엇입니까?git merge 와 git rebase 의 차이점은 무엇입니까?답변원래 3 개의 커밋 A , B , C 가 있다고 가정합니다.그런 다음 개발자 Dan은 커밋 D 생성하고 개발자 Ed는 커밋 E 생성했습니다.분명히이 갈등은 어떻게 든 해결되어야합니다. 이를 위해 두 가지 방법이 있습니다.이동 :커밋 D 와 E 모두 여전히 여기에 있지만 D 와 E 모두에서 변경 사항을 상속하는 M 을 만듭니다. 그러나 이것은 많은 사람들이 매우 혼란스럽게 생각하는 다이아몬드 모양을 만듭니다.REBASE :실제 파일 내용이 M 과 동일한 커밋 R 생성합니다. 그러나 우리는 E 제거합니다 (점-소실 선으로 표시됨). 이러한 삭제로 인해 E 는 개발자..

개발관련/Git 2021.09.14

Git에서 처음 두 커밋을 Squash 하는 방법

질문 : Git에서 처음 두 커밋을 스쿼시 하시겠습니까? git rebase --interactive 하면 원하는 수의 커밋을 하나의 커밋으로 통합 할 수 있습니다. 초기 커밋에 커밋을 스쿼시하지 않는 한 모든 것이 좋습니다. 불가능 해 보입니다. 그것을 달성하는 방법이 있습니까? 관련 질문에서, 나는 첫 번째 커밋에 대해 스 쿼싱의 필요성에 대한 다른 접근 방식을 생각해 냈습니다. 즉, 두 번째 커밋으로 만들었습니다. 관심이 있다면 : git : 커밋을 첫 번째로 삽입하고 나머지는 모두 이동하는 방법? 답변 2012 년 7 월 업데이트 ( git 1.7.12+ ) 이제 모든 커밋을 루트까지 리베이스하고 두 번째 커밋 Y 를 첫 번째 X 로 스쿼시하도록 선택할 수 있습니다. git rebase -i --..

개발관련/Git 2021.09.07
728x90
반응형