git push : 마지막 커밋을 제외한 모든 커밋 푸시
가장 최근의 것을 제외한 모든 로컬 커밋을 원격 저장소로 푸시하는 방법이 있습니까? 수정해야 할 경우를 대비하여 마지막 항목을 로컬에 보관하고 싶습니다.
이것을 시도하십시오 ( master
지점으로 작업하고 리모컨이이라고 가정 origin
).
git push origin HEAD^:master
HEAD^
현재 분기에서 마지막 커밋 이전의 커밋을 가리 키므로 (마지막 커밋은라고도 함 HEAD
)이 명령은이 커밋 (모든 이전 커밋 포함)을 원격 origin/master
분기로 푸시합니다 .
관심 이 있는 경우이 매뉴얼 페이지 에서 개정판 지정에 대한 자세한 정보를 찾을 수 있습니다 .
업데이트 : 그게 사실인지 의심 스럽지만 어쨌든 마지막 커밋이 병합 인 경우 해당 명령에주의해야합니다. 병합 커밋을 사용하면 HEAD
HEAD^
해당 커밋의 첫 HEAD^2
번째 부모, 두 번째 부모 등을 참조합니다.
push
특정 커밋까지 작동하는보다 일반적인 접근 방식 은 커밋 해시를 지정하는 것입니다.
git push <remote> <commit hash>:<branch>
예를 들어 다음과 같은 커밋이있는 경우 :
111111
< -first commit
222222
333333
444444
555555
666666
<-last commit
git push origin 555555:master
.. 마지막 커밋을 제외한 모든 것을 원격 master
브랜치에 푸시합니다.
git push origin 333333:myOtherBranch
.. 333333
원격 브랜치 까지 커밋을 푸시 합니다.myOtherBranch
또 다른 가능성은
git reset --soft HEAD^
가장 최근 커밋을 해제하고 변경 사항을 staged로 이동합니다. 그런 다음
git push
나머지 커밋 만 푸시합니다. 이렇게하면 git log
밀기 전에 무엇을 밀지 (를 통해 ) 볼 수 있습니다 .
참고 URL : https://stackoverflow.com/questions/8879375/git-push-push-all-commits-except-the-last-one
'development' 카테고리의 다른 글
요소를 숨기지 만 CSS 생성 콘텐츠 표시 (0) | 2020.12.08 |
---|---|
C ++는 컴파일 타임 카운터를 지원합니까? (0) | 2020.12.08 |
Android 4.0, 작업 표시 줄의 텍스트가 표시되지 않음 (0) | 2020.12.08 |
Rpresentation Markdown에서 실행되지 않는 코드 포함 (0) | 2020.12.08 |
오류 : 원인 : buildToolsVersion이 지정되지 않았습니다. (0) | 2020.12.08 |