2016-08-07 2 views
2

이것은 git의 디자인 철학에 위배 될 수 있지만,git에서 전체 분기를 무시할 수 있습니까?

내 org에서 나는 수천 개의 개발자 분기를 끊임없이 내 보냅니다. Dev/<login>/<something...>

나는 기본적으로 git를 가지고 있고, 기본적으로이 브랜치들을 풀지 않을 것이다. 그런 다음 특정 지사에서 공동 작업해야 할 필요가있는 경우 명시 적으로 해지해야합니다.

이것이 가능합니까?

+1

'.gitignore'는 잘못 넣을 수 있습니다. 적절한 리모트에 대해서'.git/config'의'fetch' 스펙을 조정할 필요가 있습니다. 거기에 와일드 카드를 가지고 놀아보십시오. 죄송합니다. 나는 더 이상 당신을 도울만큼 지식이 없지만 작동하는 해결책을보고 싶습니다. :-) –

+0

가능한 [원격 저장소를 영구적으로 무시할 수 있습니까?] (http://stackoverflow.com/questions/16842426/can-git-permanently-ignore-a-remote-branch) –

답변

3

git-pullgit-fetch 사용

감사 (내 부족한 연구는 더 나타냅니다).

자세한 내용은 https://git-scm.com/docs/git-fetch을 참조하십시오. 특히 "원격 추적 분기 구성"섹션 (아래에 축약되어 있음)을 참조하십시오.

패턴을 볼 수만 있고 일부는 제외하지 않을 수 있습니다. 당신은 무엇 때문에 할 수있는 것은 중 하나입니다

  • 수동 대신 와일드 카드에서 끌어 원하는 지점을 표시
  • 당신이 Dev/*Foo/*을 구별 할 수 있도록 모두가, 모든 지점에 대한 접두어를 사용하여 가져 오기 자식이 가져

은 원격 구성 할 수 있습니다. < 저장소 > .fetch 구성 변수.

일반적으로 이러한 변수는 다음과 같이 보일 수 있습니다 :

[remote "origin"] 
    fetch = +refs/heads/*:refs/remotes/origin/* 

을이 구성은 두 가지 방법으로 사용됩니다

자식은 명령에 가져 오기 위해 어떤 지점 및/또는 태그를 지정하지 않고 실행 인출 할 때 라인, 예. git은 원점을 가져 오거나 git fetch, remote를 가져옵니다. < 저장소 > .fetch 값은 refspecs로 사용되며 가져올 참조와 가져올 로컬 참조를 지정합니다. 위 예제는 원점에있는 모든 브랜치 (즉, 값의 왼쪽에 일치하는 모든 참조, refs/heads/)를 가져오고 refs/remotes/origin/에있는 해당 원격 추적 분기를 업데이트합니다 계층.

+1

감사합니다. @ 토렉! –

3

항상 작업중인 현재 분기와이 분기 만 가져올 수 있습니다.

나는 차라리 당신이 항상 당겨이 구문을 사용하여 분기를 병합 할 때 기본적으로 지금이 지점

# pull only the current branch you are working on 
# git pull = git fetch && git merge 
git pull origin <branch name> 

을 당기지, 자식이있을 것이다/병합 :

# grab the remote branch 
git pull origin Dev/<branch name> 

또 다른 방법은 refspec와 "Play"를하지만 recommendin하지 메신저입니다 g는 매우 단순하기 때문에 그렇게합니다. 여기

는 샘플 문서 양식입니다 :

... 그러나, 당신이 뭔가를 달성하기 위해 네임 스페이스 (또는 디렉토리)를 사용할 수 있습니다.

당신이 가지 일련의 미는 QA 팀이있는 경우,
및 마스터 브랜치와 QA 팀의 가지 있지만 아무것도 중 하나를 얻으려면, 당신은이 같은 설정 섹션을 사용할 수 있습니다

[remote "origin"] 
    url = https://github.com/schacon/simplegit-progit 
    fetch = +refs/heads/master:refs/remotes/origin/master 
    fetch = +refs/heads/qa/*:refs/remotes/origin/qa/* 
관련 문제