从fork到特定远程分支的Git推送



还是个git noobie,一直在使用非常基本的命令来提交、推送、拉取。

我正在接受一个分叉项目,并将其推送给私人回购,我通过在分叉回购中创建远程来实现这一点

git remote add mysite https://github.com/Siterepo/site.git

然后,一旦发生变化,我就把它推到我的私人回购中。

git push -u mysite master

我的第一个问题是,这是否合乎逻辑,我是否应该跳过使用分叉版本,因为这是谷歌网络入门套件,有些才华横溢的人很可能不需要我的贡献。

所以我应该把网络入门套件克隆到我自己的repo中,然后随意定制?我还能以这种方式合并更新吗?


好吧,假设我应该按照我上面说的去做,那么这是没有用的,但如果我最初用GoogleMaster>MyFork>MyMaster提出的逻辑,我该如何推送到特定的分支,我说我使用

git push -u mysite master

但是

git push -u mysite testBranch

不起作用。

我想要自己的回购的原因是,这样我就可以推送自己的版本,拥有自己的分支,并从最初的项目中抽象出来,同时当他们进行一些激烈或更好的性能更新时,仍然可以合并。

我的第一个问题是,这是否合乎逻辑,我是否应该跳过使用分叉版本,因为这是谷歌网络入门套件,有些才华横溢的人很可能不需要我的贡献。

如果您不打算返回贡献,则不必分叉(在服务器上克隆)
你可以简单地克隆它,然后更改远程命名的"origin"url:

git remote set-url origin https://github.com/Siterepo/site.git

你可以开始推动你的私人回购。

我还能以这种方式合并更新吗?

如果你想关注它,你仍然可以添加第二个远程,引用原始回购:

git remote add upstream /url/of/first/repo

这应该有效:

git push -u mysite master:testBranch

或:

git checkout -b testBranch
git push -u mysite testBranch

最新更新