为了开始处理新的nopCommerce项目,我创建了一个私有的git存储库。我希望能够从源代码中提取最新的更改,因此我复制了官方的nopCommerce repo(https://help.github.com/articles/duplicating-a-repository/)。我想将更改提交到我的私有存储库,该存储库将自定义主题添加到项目中。我应该在哪里提交更改,以便能够轻松地从以后的官方仓库中提取和合并更改?另外,镜像存储库中的内容应该如何影响我的git工作流程。在我最近的项目中,我使用了gitflow(https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow)。
答案 0 :(得分:2)
如果您复制了原始"上游"回到你自己的私人Git仓库,这意味着你工作站上的本地克隆拷贝现在应该推送给你的私人回购。
这是因为git remote set-url --push origin https://github.com/exampleuser/mirrored
命令(from the GitHub tutorial)
它允许您拉动原始回购并推到镜子。
但是,如果您打算添加自己的提交,这个私人仓库应该是一个分叉,而不是镜像。
这意味着:
将原始回购引用为" upstream
" (而不是远程origin
的获取网址)
git remote add upstream $(git remote get-url origin)
将push和fetch url设置为私人仓库
git remote set-url origin $(git remote get-url origin)
之后,您可以向您的私人仓库申请任何您想要的工作流程(例如git-flow),同时仍然可以从upstream
获取,并合并(或在之上重新设置)任何新的提交来自原始仓库现在引用为upstream
)