자식 커밋 및 태그를 동시에 푸시
나는 git push --tags
old와 별개의 작업 인 이유를 알고 git push
있습니다. 실수로 태그를 푸시하지 않기 때문에 푸시 태그는 의식적인 선택이어야합니다. 괜찮아. 그러나 둘 다 함께 밀어 넣는 방법이 있습니까? (에서 제외 git push && git push --tags
)
2015 년 5 월 업데이트
현재 자식 2.4.1 을 수행 할 수 있습니다
git config --global push.followTags true
true로 설정하면 기본적으로 --follow-tags 옵션을 활성화하십시오. --no-follow-tags를 지정하여 푸시시이 구성을 재정의 할 수 있습니다.
2013 년 4 월 업데이트
때문에 자식 1.8.3 (4 월 22D, 2013) , 더 이상 태그를 밀어 다음 지점을 밀어하고이 명령을 수행 할 필요가 없습니다 :
새로운 "
--follow-tags
"옵션은 분기를 밀어 낼 때 주석이 달린 관련 태그git push
를 푸시 하도록 지시합니다 " " .
이제 새로운 커밋을 추진할 때 시도 할 수 있습니다.
git push --follow-tags
그러나 모든 로컬 태그를 푸시 하지는 않지만 커밋이 참조하는 태그 만 푸시합니다 git push
.
Git 2.4.1+ (2015 년 2 분기)는 옵션을 소개합니다 push.followTags
: " git push
"에 지점을 포함시키는 방법 "을 참조하십시오 .
원래 답변, 2010 년 9 월
핵 옵션은 git push --mirror
모든 심판을 추진할 것이다 refs/
.
현재 브랜치 커밋으로 하나의 태그 만 푸시 할 수도 있습니다.
git push origin : v1.0.0
--tags
옵션을 다음과 같은 참조 스펙과 결합 할 수 있습니다 .
git push origin --tags :
(왜냐하면 --tags
: 명령 줄에 명시 적으로 나열된 참조 사양 외에도 모든 참조 refs/tags
가 푸시 됨 )
또한 "이 항목이 자식 푸시"호출 하나와 브랜치와 태그를 누르면 " "
간단한 팁이 Zoltán Füzesi 의 Git 메일 링리스트 에 게시되었습니다 .
나는
.git/config
이것을 해결하기 위해 사용 한다 :
[remote "origin"]
url = ...
fetch = +refs/heads/*:refs/remotes/origin/*
push = +refs/heads/*
push = +refs/tags/*
이 줄을 추가
git push origin
하면 모든 지점과 태그가 업로드됩니다. 그중 일부만 업로드하려면 열거 할 수 있습니다.아직 직접 시도하지는 않았지만 분기와 태그를 동시에 밀어 넣는 다른 방법이 git push에 추가 될 때까지 유용 할 수 있습니다.
반면에 입력하는 것은 괜찮습니다.
$ git push && git push --tags
push = +refs/heads/*
모든 지점 을 강제로 제거합니다 .
이것은 지금 막 조금, 그래서 참고.
René Scheibe 는 이 흥미로운 의견을 추가 합니다 .
--follow-tags
매개 변수는 아래의 태그 만으로 오해의 소지.git/refs/tags
간주됩니다.
경우git gc
실행, 태그에서 이동.git/refs/tags
로.git/packed-refs
. 나중에git push --follow-tags ...
더 이상 예상대로 작동하지 않습니다.
어쩌면 이것은 누군가를 도울 수 있습니다.
1. git commit -a -m "msg"
2. git tag 0.1.0 // creates a new tag locally
3. git push origin tag 0.1.0 // pushes the tag & the code in the remote repo
Git GUI에는 PUSH 버튼이 있습니다-펑을 용서하고, 대화 상자가 열리면 대화 상자에 태그 확인란이 있습니다.
태그없이 명령 줄에서 분기를 푸시 한 다음 --follow-tags
위 의 옵션을 사용하여 분기를 다시 푸시하려고했습니다 . 이 옵션은 다음과 같은 주석이 달린 태그로 설명됩니다. 내 태그는 간단한 태그였습니다.
나는 무언가를 고치고 수정 사항으로 커밋에 태그를 붙인 다음 (동료가 수정 프로그램을 선택할 수 있음) 소프트웨어 버전 번호를 변경하고 내가 만든 릴리스에 태그를 지정하여 동료가 해당 릴리스를 복제 할 수 있습니다.
Git은 모든 것이 최신이라고 답했다. 태그를 보내지 않았습니다! 태그에 주석이 달지 않았기 때문일 수 있습니다. 아마도 지점에 새로운 것이 없었기 때문일 것입니다.
Git GUI와 비슷한 푸시를했을 때 태그가 전송되었습니다.
당분간은 커맨드 라인이 아닌 Git GUI를 사용하여 변경 사항을 리모컨으로 푸시하려고합니다 --follow-tags
.
@since Git 2.4
git push --atomic origin <branch name> <tag>
참고 URL : https://stackoverflow.com/questions/3745135/push-git-commits-tags-simultaneously
'Programming' 카테고리의 다른 글
개인 API를 사용하지 않고 현재 첫 번째 응답자 확보 (0) | 2020.03.05 |
---|---|
프로덕션 용 Angular 앱 번들 방법 (0) | 2020.03.05 |
kotlin 소스 파일을 Java 소스 파일로 변환하는 방법 (0) | 2020.03.04 |
프로그래밍 방식으로 주요 프레스 이벤트를 시뮬레이션 할 수 있습니까? (0) | 2020.03.04 |
Android : 프로그래밍 방식으로 .apk 설치 (0) | 2020.03.04 |