2014-12-28 4 views
0

상황 : 여러 지점이있는 오픈 소스 프로젝트와 기여를위한 분기점. github에서 풀 요청에 대한 새 분기를 만들고 싶습니다. 오픈 소스 프로젝트의 기존 브랜치 중 하나에이 브랜치를 기반으로하고 싶지만 커밋이 원래 브랜치에 들어가는 것을 원하지 않습니다. 내가, 내 포크를 복제 git checkout -b my-branch origin/some-branch을 실행 한 후 my-branch에 + 푸시를 위탁하는 경우 내 경험으로 당git는 원격 지점을 기반으로 새로운 비 추적 지점을 만듭니다.

는 Github에서의 커밋 some-branch하지 my-branch로 이동합니다. 분명히, 이것은 동일한 브랜치에서 여러 개의 풀 요청에 대해 여러 브랜치를 만들고자 할 때 문제가된다. + 커밋 -

git checkout -b some-branch origin/some-branch

git checkout -b my-branch (일부 브랜치를 기반으로 새로운 지점, 그러나 그것을 추적하지) 그 이후

:

내가 이것을 위해 찾은 해결 방법은 다음과 같다 밀어 넣으면 먼저 Github에 my-branch을 만듭니다.

그러나 이로 인해 추가 로컬 복사본 some-branch이 표시됩니다. 나중에 삭제할 수는 있지만 분명히 만들지는 않습니다. origin/some-branch을 기반으로 my-branch을 생성하는 방법이 있습니까? 한 명령으로 추적 할 수 없지만 중간에 추가 분기가 없습니까?

+0

push.default와 Git 버전을 게시하고 싶을 수도 있습니다. 이 두 가지 모두 누를 때 나타나는 행동에 영향을 줄 수 있습니다. –

답변

1

origin/some-branch 대신 동일한 커밋의 SHA1 해시를 사용하십시오. 예 :

git checkout -b my-branch 92fc7a2 

기억해야 할 점은 커밋의 레이블 일뿐입니다. 커밋과 줄 바꿈의 SHA1 해시 이름을 포함하는 41 바이트 파일입니다.

+0

아니면'git checkout -b my-branch origin/some-branch^{commit} ' – jthill

+0

그 멋진 러시아 유카카 씨를 어떻게 벌었습니까? :-) – SzG

+0

커밋 무엇입니까? 나는 커밋이 아닌 브랜치에 대해 묻고있다 ... @jthill - 추적 브랜치에 특정 커밋 커밋 만 지정하면 안된다? 그 지점을 전혀 추적하고 싶지 않습니다. – jurchiks

관련 문제