2017-02-03 1 views
1

분기 된 원래 분기에서 내 분기를 동기화 할 수있는 자식 별칭을 만들고 싶습니다.현재 브랜치가 분기 된 브랜치를 git에 알 수 있습니까?

예를 들어 <branch A>에서 분기 한 경우 동기화하려면 origin/<branch A>에서 가져와야 할 자식 별칭을 인식 할 수있는 방법이 있습니까?

+0

부모 지점은 'origin/'입니까? – Inian

+0

예. 'origin/'는''의 부모 분기가됩니다. 그래서 별칭을 실행하면''를''로 병합합니다. –

+0

왜''가''에있을 때 단순한 병합이되지 않을까요? – Inian

답변

4

망할 놈의 알거나 master 또는 feature-31415 또는 ourDevelopmentProcessUsesReallyLongBranchNamesBecauseTheyHateUs 같은 지점 이름이에 대해 온 방법 상관하지 않는다. 알고 있거나 아끼는 것은 이름이 존재하고 현재 특정 커밋을 가리키는 것입니다. 그렇지만 모든 지점은 업스트림 설정을 가질 수 있습니다.

인수없이 git merge을 실행하거나 인수로 사용하면 git rebase에 대한 인수로 사용하는 등 구성한 업스트림이 병합 인수로 사용됩니다. 일반적으로 master의 업스트림은 origin/master입니다. sbr (짧은 지점)을 origin/anotherLongNameBecauseTheyWantToReplaceUsWithRobots을 업스트림으로 설정할 수 있으며 다시 입력 할 필요가 없습니다.

evil위한 상류로 origin/zorg을 설정하려면

git branch --set-upstream-to=origin/zorg evil 

제거 상류 :

git branch --unset-upstream evil 

상류 설정은 단순히 두 부분 필드 :

$ git config --get branch.master.remote 
origin 
$ git config --get branch.master.merge 
master 

이것은 이유와 이유입니다 masterorigin/master입니다. 그것의 상류로. 업스트림도 git status에 의해 자동으로 사용되며 git push의 기본 밀어 넣기 대상이며 @{upstream}을 분기 이름에 적용한 결과입니다. 이것은 모두 Git에 내장되어 있습니다. 캐치는 지점 당 하나의 업스트림 만 얻는다는 것입니다. 그것이 모두 필요한 경우, 당신은 좋습니다.

당신은 당신의 자신의 구성 항목, 예컨대 : 2

$ git config branch.master.zorblax giant-space-eel 

하지만 힘내 자체 아무것도 이것을 사용하지 않습니다를 추가 할 수 있습니다. 그래도 Git은 개발자의 즉각적인 상상력 밖에서 결코 사용할 수없는 최고의 솔루션이 아닌 거대한 도구 세트입니다. 원하는 경우 zorblax 설정을 사용하는 코드를 직접 작성하여 코드로 작성할 수 있습니다.


1 당신은 다른 지역 지점의 상류로 현지 지점을 설정할 수 있습니다. 구성 방식으로 remote 부분을 .으로 설정합니다. 나머지 Git에서는 필요한 경우 예를 들어 @{upstream} 설정을 상징적으로 표시하는 등 무시합니다.

remote이 원격 이름으로 설정되어있을 때 분기 이름 매핑과 관련된 숨겨진 세부 정보가 있습니다. 이것은 merge 설정의 원래 값이 리모컨의 발명보다 선행하기 때문입니다. 일반적으로 이것은 별 차이가 없습니다.

President Zorblax. 10 년 전에 만화의 날짜를 적어 두십시오. 그래도 빨간 버튼 텍스트가 더 새로운 것 같아요.

+1

마찬가지로 로컬 지점을 쉽게 추적 할 수 있습니다. – jthill

+0

@jthill : 네, 그 말을 생각해 보았습니다.하지만 그의 특별한 용도로는 조금 벗어난 것 같았습니다. 나는 그것을 각주 1에 추가 할 것이다. – torek

관련 문제