2017-05-03 9 views
0

저는 w/bzr (bazaar vcs)를 얼마 동안 사용해 왔으며 코어 트렁크에 스택 된 많은 응용 프로그램을 재조정하기로 결정했습니다 (히스토리 리소스 보존을 돕기 위해). 게시 된 웹 앱의"working tree"가있는 bazaar 원격 스택 된 분기

는 워크 플로 작업 트리를 얻기 위해 서버에 bzr checkout 다음

bzr push bzr-ssh://<server>/var/www/<remote-branch-name>

포함되어 있습니다.

이 새로운 패러다임을 사용하여 스택 된 브랜치를 서버에 푸시하고 작업 트리를 제공하고 싶지만 가능하지 않습니다.

bzr push --stacked -d <branch> <remote>

행복하게 서버에서 서버에 새로운 스택 분기를 만들 수 있지만됩니다

  • bzr infoBZR에서 부모
  • bzr checkout 결과를 보여줍니다 : ERROR : 아니 지점

넷, 작업 트리 없음 |

궁극적으로 방금 새 원격 지점을 삭제하고 돌아가서 --stacked을 생략했습니다.

내가 놓친 게 궁금한가요?

+0

이것은 업스트림 BZR의 버그와 같습니다. – jelmer

답변

0

쌓인 가지에 대해 설명 하겠지만 아래에서는 대신 공유 저장소를 사용하는 것이 좋습니다.

"bzr info"가 상위를 표시하는지 여부는 중요하지 않습니다. 스택 된 지점을 보여줘야합니다. 아래 예에서

는이 "위에 적층"키이다

bzr info bzr+ssh://teeny/~/bzr 
Standalone branch (format: unnamed)            
Location: 
    branch root: bzr+ssh://teeny/~/bzr/ 

Related branches: 
    parent branch: bzr 
    stacked on: http://bazaar.launchpad.net/~abentley/bzr/branches-uncommitted 

바는 스택에있는 지점을 결정하도록 시도한다. 푸시 출력의 일부로이를 인쇄해야합니다.

잘못되었을 경우 --stack-on으로 무시할 수 있습니다. 스택하는 브랜치는 적어도 브랜치만큼 퍼블릭해야한다.

하지만 공간을 절약하기 위해 쌓인 가지가 아닌 공유 저장소를 사용하는 것이 좋습니다. 더 효율적이고 사용자에게 친숙합니다. Bazaar는 대상 위치를 포함하는 저장소를 찾으면 자동으로 공유 저장소를 사용합니다. 예를 들어 "bzr init-repo bzr + ssh : /// var/www /"는/var/www 아래의 모든 브랜치가 자동으로 사용할 공유 저장소를 생성합니다.

개인 정보 보호 문제를 해결하기 위해 누적 분기가 있습니다./var/www의 브랜치 중 일부가 private 인 경우 공유 저장소는 해당 사설 브랜치의 수정본을 포함하기 때문에 위험합니다. Launchpad가 스택 된 분기를 사용하는 가장 큰 이유는 Launchpad가 개인 분기를 지원하기 때문입니다. 공용 분기에 쌓인 개인 분기는 공용 분기에 개인 개정을 유출하지 않고 공간을 절약합니다. 공개 브랜치는 초기 푸시 후에 비공개로 만들어지기 때문에 기본적으로 스태킹을 사용합니다.