1

我已经分叉了一个 repo 来为项目添加一些更改;它是一个 Vim 插件。我打算使用我的分叉回购作为 Vundle 的来源。但如果将来有的话,我也想从原始存储库中获取更新。

我应该如何维护回购?

  • 我在新分支中有更改;我应该合并它吗?
  • 如果我不合并它,我将不得不在 Vundle 克隆 repo 后手动切换到该分支。
  • 如果我合并它,我如何从原始仓库接收更新?主人会变的。它会被添加为新分支吗?
  • 如果有人能获得一些文章的指针或建议我应该如何搜索解决方案/最佳实践,那就太好了;我的搜索正在挑选垃圾一段时间(可能,我对这里的东西的确切命名一无所知)。

笔记:

  • 我是 git 和 Vim 的新手。
4

1 回答 1

2

如果您正在改进插件,最好的解决方案可能是向原始仓库的所有者提出您的补丁。

如果您不能或不想这样做,您可以将其保存在 dev 分支或您的master. 它不会有任何区别:无论哪种方式,您都必须在分支之间进行合并,并且origin/master每次您想要从上游检索更新时。


示例:假设您希望将其保留在本地master分支中。然后你会有:

A ----------------- B
L origin/master     L master

B您对修改所做的提交在哪里。

当您想从上游检索更新时,使用git fetch origin,您最终会得到:

   ---- B
  /     L master
 /
A -- C -- D
          L origin/master

然后你只需要从你的master分支:git merge origin/master,为了获得你的修改和更新的提交

   ---- B -- E
  /         /L master
 /         /
A -- C -- D
          L origin/master

正如我们所看到的,如果您的更改可以被上游接受,那将会更容易。不仅任何人都可以从中受益;这对你来说也会容易得多。

于 2014-01-25T19:44:25.973 回答