2

或多或少,我故意创建了这个场景:

# 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

所以现在我处于分支消失的状态,由于本地分支不可用,我无法登陆。 注意:git(和 gitolite)工作得很好

$ arc land

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

/rant.. 我在 Phabricator 的 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.

据我所知,我没有办法关闭该差异。我该如何恢复?

4

1 回答 1

2

arc close-revision <Diff-ID>应该关闭它。基本上,您有两个相互竞争的 Git 附加组件正在“登陆”您的更改。git flow feature finish <feature>已经“登陆”了您的更改,因此当您运行时arc land,它无法执行“登陆”您的更改的主要功能。

于 2016-09-28T23:13:58.877 回答