Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Github-在比较分支时,没有文件更改,但有许多提交_Git_Github - Fatal编程技术网

Github-在比较分支时,没有文件更改,但有许多提交

Github-在比较分支时,没有文件更改,但有许多提交,git,github,Git,Github,我正在比较fork中的dev分支和上游中的dev分支。它显示30次提交的差异,但更改了0个文件。diff中出现的所有提交都是已经合并到上游的旧提交(主要是“合并分支开发…”类型)。这就产生了一个问题,即每个PR都显示了许多旧的提交。尝试重新设置基址,但仍显示相同的差异 为什么会发生这种情况?你能帮我解决吗?我们正在使用Github for Enterprise,因此无法附加显示差异的url 为什么会发生这种情况 可能是因为您可能已经从您的fork(origin)/dev和upstream/dev

我正在比较fork中的dev分支和上游中的dev分支。它显示30次提交的差异,但更改了0个文件。diff中出现的所有提交都是已经合并到上游的旧提交(主要是“合并分支开发…”类型)。这就产生了一个问题,即每个PR都显示了许多旧的提交。尝试重新设置基址,但仍显示相同的差异

为什么会发生这种情况?你能帮我解决吗?我们正在使用Github for Enterprise,因此无法附加显示差异的url

为什么会发生这种情况

可能是因为您可能已经从您的fork(origin)/dev和upstream/dev执行了PR(Pull请求),这不是一个好的实践。
您通常会从一个专用分支(
myfix
)到
上游/dev
进行PR。然后简单地将您自己的
dev
重置为
upstream/dev
,以便在fork中获得
upstream/dev
的准确图像,并且:

  • 为将来的PRs创建新的
    修复
    /
    功能
    分支
  • dev
    上重新设置现有
    fix
    /
    功能
    分支的基础,以便于将来的PRs
如果所有事情都在本地进行或隐藏,我会:

  • 在本地
    dev
    所在的位置创建一个专用分支(
    myfix
    myfeature
    )(假设我直接在
    dev
    上开发下一个PR)
  • 将开发重置为上游开发
即:

git交换机开发
git分支myfix
git取上游
git重置——硬上游/开发
吉特推力
git开关myfix
#恢复工作

感谢您的快速响应!我想我们应该在重置后“git push”来更新fork?@Seffy是的,强制推。我已经相应地编辑了答案。从现在起,我应该使用“git pull upstream dev”和“git push”更新我的fork,这会使我的dev分支按预期对齐吗?@Seffy是的。实际上,对于
dev
git branch dev-u upstream/dev
git remote set url——推送上游url/of/fork
,这样一个简单的
git pull
就足够了:它将从
dev
的右侧遥控器上推送到您的fork。