Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.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

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
Git 如何从一个远程设备获取数据并将其推入另一个远程设备_Git_Github - Fatal编程技术网

Git 如何从一个远程设备获取数据并将其推入另一个远程设备

Git 如何从一个远程设备获取数据并将其推入另一个远程设备,git,github,Git,Github,我正在开发一个虚拟助手解决方案,用于我的组织。我已从GitHub克隆了Microsoft AI存储库 人工智能回购定期更新新功能,我想利用这些功能 这就是我想要实现的目标: 有一个本地repo(AI),我从中获取远程提交 出身/硕士(AI) 我希望能够自定义代码以满足我们的需要(例如添加 自定义技能和/或本地化内容) 我希望能够将代码和更改推送到另一个远程repo(“myownloterepo”) 然后,当从AI repo获取新提交时,我希望 能够将这些与我的自定义代码合并,并将其提交给myow

我正在开发一个虚拟助手解决方案,用于我的组织。我已从GitHub克隆了Microsoft AI存储库

人工智能回购定期更新新功能,我想利用这些功能

这就是我想要实现的目标:

  • 有一个本地repo(AI),我从中获取远程提交 出身/硕士(AI)
  • 我希望能够自定义代码以满足我们的需要(例如添加 自定义技能和/或本地化内容)
  • 我希望能够将代码和更改推送到另一个远程repo(“myownloterepo”)
  • 然后,当从AI repo获取新提交时,我希望 能够将这些与我的自定义代码合并,并将其提交给myownlotereporepo
  • 因此:

  • 将AI repo(AI)克隆到本地主机
  • 从AI获取更改(源代码/主代码->本地主代码)
  • 对本地主机进行更改
  • 将本地主机的更改推送到myownloterepo(源/主机)
  • 回到步骤2
  • 我试图寻找一个Git策略来应对这种情况,但是我没有找到任何好的建议


    有什么建议吗?

    这是最简单的方法,有时这不是你想要的。我在这种情况下所做的:

    使用自述文件创建我的回购(在GitHub、GitLab等中)

    本地克隆我的回购协议

    向我想要的代码来源的回购中添加远程(我通常称之为上游)

    git远程添加上游git@github.com/无论什么

    从遥控器中拔出

    git拉动上游主机

    推动我的回购


    git-push-origin-master

    可能分叉的混乱方面是术语“origin”。克隆repo时,它有一个默认的远程称为origin,指向GitHub上的分叉,而不是它分叉的原始repo。要跟踪原始回购,您需要添加另一个远程,通常称为“上游”:

    git远程添加上游git://github.com/user/repo.git

    然后,您的过程变得清晰:从上游提取,然后推/拉到原点。所有设置完成后,“git remote-v”将显示如下内容:

    `origin https://github.com/you_repo/AI.git (fetch)
     origin https://github.com/you_repo/AI.git (push)
     upstream   https://github.com/Microsoft/AI.git (fetch)
     upstream   https://github.com/Microsoft/AI.git (push)`
    
    请参阅关于此主题和相关主题的其他更深入的答案:以及我的建议