git nirvana를 달성하기 위해 현재 병합하는 상황에서 리베이스를 활용하는 방법을 배우는 데 하루를 보내고 있습니다.
내가 git 101 플로우라고 생각하는 것을 실행할 때 (아래에서 설명합니다), push --force
변경 사항을 원점으로 되돌릴 때해야합니다.
(참조 나는이 덮여 땅임을 알 - 난 안 유일한 사람 1 , 2 , 3 , 4 , 5 ), 나는 기술적 인 이유를 이해 왜 힘이 필요하다. 내 문제가 있습니다 REBASE의 칭찬을 노래 많은 (많은) 블로그 항목이하고 (참조 자신의 삶을 변화 어떻게 --- 이것이다 1 , 2 , 3 , 4는 몇 가지를 나열),하지만 그들 중 누구도 그 언급하지 push --force
의 일부입니다 그들의 흐름. 그러나 기존의 stackoverflow 질문에 대한 거의 모든 답변은 "예, 리베이스하려면 사용해야 push --force
합니다." 와 같은 내용을 말합니다 .
리베이스 옹호자의 수와 종교성을 감안할 때 '푸시-포스'를 사용하는 것은 리베이스 흐름의 내재 된 부분이 아니며 종종 푸시를 강요해야하는 경우 뭔가 잘못하고 있다고 믿어야합니다 .
push --force
A는 나쁜 일 .
여기 내 흐름이 있습니다. 어떤 방식으로 힘없이 동일한 결과를 얻을 수 있습니까?
간단한 예
두 가지 :
- v1.0- 릴리스 브랜치, 패치 만 포함
- master- 다음 주요 릴리스를위한 모든 것.
다음 릴리스를 위해 몇 가지 패치 커밋과 몇 가지 커밋이 있습니다.
다음 릴리스에서 손실되지 않도록 패치를 마스터에 통합하고 싶습니다. 깨달음 전 저는 간단히 :
git checkout master
git merge v1.0
하지만 지금 노력하고 있어요
git checkout master
git rebase v1.0
그래서 지금 여기 있습니다.
시간 :
git push
주사위가 없습니다.