2016-09-28 4 views
0

더 많거나 적은 대상에없는 <기능 지점>에 커밋, 나는 일부러이 시나리오 생성되지 : 나는 상태에있어 그래서 지금아크 토지 : 아니 이미

# We use git-flow. 
$ git flow feature start <feature> 

# update a file 
$ git commit <file> -m '<message>' 
$ git rebase -i develop 
$ git push -u origin <feature-branch> 

# Try arcanist now 
$ arc diff 

# diff was accepted 
$ git flow feature finish <feature> 

# feature branch removed, now in develop, let's push 
$ git push 

을 어디에 브랜치가 없어졌고 로컬 브랜치를 사용할 수 없기 때문에 토지를 아크화할 수 없습니다. 참고 : 자식 (및 gitolite가)

$ arc land 

Exception 
Branch "<feature-branch>" does not exist in the local working copy. 

/호언 장담 잘 작동합니다 .. 나는 파브리 케이 터의 Maniphest 내 기능 지점이 표시되지 않습니다. 왜 안돼?

나는 다시 그 지점 당길 수 :

$ git fetch -a 
$ git checkout <feature-branch> 

을하지만 땅에 여전히 드릴 수 없습니다 :

$ arc land 
Landing current branch '<feature-branch>'. 
TARGET Landing onto "<feature-branch>", selected by following tracking branches upstream to the closest remote. 
REMOTE Using remote "origin", selected by following tracking branches upstream to the closest remote. 
FETCH Fetching origin/<feature-branch>... 

Usage Exception: There are no commits on "<feature-branch>" which are not already present on the target. 

을 그리고 내가 말할 수있는 지금까지, 나는 그 DIFF을 폐쇄에 대한 의지가 없다. 어떻게 복구합니까?

답변

1

arc close-revision <Diff-ID>을 닫아야합니다. 기본적으로 변경 사항을 "상륙"하는 2 개의 경쟁사 부가 기능이 있습니다. git flow feature finish <feature>이 변경 사항을 이미 "착륙"했으므로 arc land을 실행하면 변경 사항을 "착륙"하는 기본 기능을 수행 할 수 없습니다.

+0

감사합니다. 나는 phabricator를 처음 사용하고 있으며 의도적으로 이것을 설정 했으므로 경쟁에 대해 잘 알고있었습니다. 하지만 나는 마술사가 닫을 수있는 선택권이 있는지를 보지 못했습니다. 모든 것이 자체적으로 앞으로 나아가는 것처럼 보였기 때문에 백그라운드 프로세스가 있어야합니다 (diff 닫기, 분기 표시 갱신 등). –

+0

자동화 된 프로세스에 대해 생각해 보았습니다. 여기서 일어나는 일에 대한 자세한 정보는 여기에서 찾을 수 있습니다 : https://secure.phabricator.com/book/phabricator/article/diffusion_updates/ – CEPA