【问题标题】:How do I fork tensorflow serving and fork the submodules as well?我如何分叉 tensorflow 服务并分叉子模块?
【发布时间】:2017-06-02 05:45:58
【问题描述】:

如果这是一个菜鸟问题,我深表歉意,但我想知道这样做的正确方法。所以我正在使用 tensorflow-serving,它包含 2 个子模块,tf_models 和 tensorflow。当我开始分叉 tensorflow-serving 然后克隆我的分叉版本时,似乎当我继续将任何文件添加到子模块时,我无权访问。当我开始 git 在子模块中添加文件然后继续到 root (tensorflow-serving) repo 然后从那里添加并提交/推送它说一切都很好但是当我从 git 中选择子模块时,我收到 404 错误。

仔细观察,这似乎是子模块仍然引用原始 tf_models 或 tensorflow 存储库的问题,唯一分叉的似乎是根 tensorflow 服务路径。

现在我自己在使用它,所以我相信如果我只是删除子模块中的 git 文件,我可能会在这里解决我的问题,但是我相信这不仅会导致我试图获取这些子模块的最新版本,但如果我到达请求拉取请求的地步,也会引发问题。

我正在考虑的其他方法之一是分叉 tf_models 存储库以及 tensorflow 存储库,然后修改 tensorflow-serving gitmodules 文件以指向我的路径。

我在这里发帖,所以我知道这样做的正确方法,因为我相信我可以破解某些东西,但更愿意知道正确的方法。任何帮助将不胜感激。

我 fork 的 repo 是 https://github.com/tensorflow/serving

【问题讨论】:

    标签: linux git github tensorflow-serving


    【解决方案1】:

    由于子模块 tensorflow (https://github.com/tensorflow/tensorflow) 和 tf_modules (https://github.com/tensorflow/models) 也属于用户 tensorflow 在 github 上的存储库,您没有权限,因此如果您想对这两个 repo 进行更改,还需要分叉这两个 repo他们。

    然后通过git clone <fork serving URL> --recursive 将服务仓库与子模块分叉。并通过以下步骤远程更改子模块:

    cd tensorflow
    git remote rm origin
    git remote add origin <fork tensorflow URL>
    cd ..
    cd tf_models
    git remote rm origin
    git remote add origin <fork tf_models URL>
    cd..
    

    如果你想对 tensorflow/tf_models 进行更改,只需在文件夹中 cd 并提交更改,然后使用git push origin branchname 推送。

    【讨论】:

    • 非常感谢玛丽娜!我一直在尝试一些我猜测的解决方案,但似乎仍然没有按预期工作。通过昨晚更改 gitmodules 文件,我能够让它在一定程度上工作,但它仍然没有指向分支,感觉像是一种笨拙的做事方式。这是一个很好的答案,感谢您抽出宝贵时间提供帮助!
    猜你喜欢
    • 2016-03-09
    • 1970-01-01
    • 1970-01-01
    • 2012-04-24
    • 2012-09-02
    • 2017-05-03
    • 1970-01-01
    • 2015-05-29
    • 2021-05-30
    相关资源
    最近更新 更多