목표를 달성하는 방법을 알고 싶습니다. 마스터 디렉토리에서 새 브랜치를 만들고 싶지만 디렉토리가 자동 생성되어 있지 않습니다. 체크인했습니다.원격 마스터에서 체크되지 않은 디렉토리에서 git release 브랜치를 만드는 방법
내 릴리스 분기에 최종 바이너리 만 포함되도록하겠습니다.
Thiis 내 마스터의 나무
: 새로운 릴리스 브랜치 내가 할 두 가지 방법을 시도$(release_branch):
|------>bin
만 bin 폴더를 가지고 있지만 내가 할 수 아니에요 : 나는 무엇을 달성하고자하는
$ (master):
|------>FolderA
|------>FolderB
|------>bin <----- This is autogenerated directory not checkedin
에.
$git subtree split --prefix=baking/bin/ -b split_libs
새로운 버전이 발견되지 않음 : 1
방법은 내가 자식 하위 트리를 사용하려고 노력했다.
자동 생성 된 디렉토리가 체크 인되어 있지 않아서 왜이 오류가 발생하는지 압니다.
방법 2 : 디렉터리 저장소를 새 분기로 분할했는데 수행 할 수 없었습니다.
$git filter-branch --prune-empty --subdirectory-filter baking/bin/ test_release
질문 : 는 단지 libs가 들어있는 자동 생성 된 디렉토리에서 분기를 만들 정말 수 있습니까?
왜이 제품을 원하십니까? 프로젝트를'bin /'으로 컴파일하는 것은 소스에서 가능해야하므로 체크인 할 필요가 없습니다. 바이너리 데이터를 추적하는 것은 Git이 설계 한 것이 아닙니다. –
우리는 내 바이너리에 의존하는 세 팀을 가지고 있으므로 시간을 보내는 것에 만족스럽지 않고 수동으로 각 바이너리를 각 서버에 업로드합니다. 대신 최신 git release 브랜치에서 바이너리를 가져올 수 있습니다. 나는 git release branch를 원점으로 밀어 넣으면 릴리스 브랜치가 많을 것이고 더 많은 공간을 소비 할 것이라고 생각했다. 그 때문에 나는 바이너리 만 원격으로 밀어 넣을 것이라고 생각했다. – LethalProgrammer
아마도 binairies에 다른 repo를 만들 수 있습니까? – baddger964