【问题标题】:arc diff a branch which already pushed to remote by creating a new branch in git通过在 git 中创建一个新分支,arc diff 一个已经推送到远程的分支
【发布时间】:2017-02-07 18:27:03
【问题描述】:

这是我需要做的情况。 我在本地有一个分支,比如 testBranch(其中包含修改后的文件 file.txt)。 我已经通过git push origin testBranch 将 testBranch 推送到远程。 所以我不能 arc diff 以便其他人可以通过 Phabricator 查看我的代码(因为我已经推送了)

我的同事所做的是创建一个新分支,例如 testBranch1,如下所示:

git checkout testBranch
git merge master            // merge master to testBranch

git checkout master
git pull --rebase           // git pull while my local update reserved

git checkout testBranch
git merge master             // merge master to testBranch

git checkout master
git merge testBranch          // merge testBranch to master

git reset origin/master      // set the current HEAD to origin/master in my local
git checkout -b testBranch1
arc diff

现在其他人可以通过 Phabraicator 在 newBranch1 中查看修改后的 file.txt。我不知道发生了什么以及为什么会这样。谁能解释一下为什么会这样?

【问题讨论】:

    标签: git phabricator


    【解决方案1】:

    Arcanist (arc) 是预提交(也称为预推送)代码审查。一旦分支被推到原点,它就破坏了奥术师的目的。推送后,您有几个选择:

    1. 使用git push origin --delete testBranch 删除原点上的分支。
    2. 当运行arc diff 命令时,告诉它你想以什么为基础:arc diff origin/master
    3. 执行上述步骤,但是,您应该注意,上述行中没有 git push 可以解决问题。

    【讨论】:

      猜你喜欢
      • 2014-03-31
      • 2020-06-09
      • 2016-11-06
      • 2016-04-25
      • 2015-08-14
      • 2014-02-04
      • 2011-09-10
      相关资源
      最近更新 更多