2013-03-27 182 views
0

我从原始官方回购分叉moodle回购。它拥有超过15个分支机构,分支机构为master。然后我在本地机器上克隆它。比方说我把它克隆在一个文件夹project,它创建了一些50 folders克隆Github回购

git remote -v给出如下:

origin https://github.com/ps/moodle.git (fetch) 
origin https://github.com/ps/moodle.git (push) 
upstream https://github.com/moodle/moodle.git (fetch) 
upstream https://github.com/moodle/moodle.git (push) 

所以,我有一个originupstream

现在,我想forkclone另一个分支从另一个用户。可以说分支是gs。因此,该用户在与moodle相同的master分支下维护此gs分支。现在,为了将它克隆到本地机器上,我创建了一个远程文件otheruser并对其进行了克隆。

所以,现在做git remote -v给出如下:

origin https://github.com/ps/moodle.git (fetch) 
origin https://github.com/ps/moodle.git (push) 
otheruser https://github.com/otheruser/moodle.git (fetch) 
otheruser https://github.com/otheruser/moodle.git (push) 
upstream https://github.com/moodle/moodle.git (fetch) 
upstream https://github.com/moodle/moodle.git (push) 

我的问题是这样的:

当我克隆分支gs,它创造了额外的子目录。所以,我的意思是我无法理解它是如何工作的?如果我在这些额外的子目录中做了任何更改,然后将它推到我的Github帐户下的master分支,它会好吗?

回答

0

只要您在提交之前将子目录中的更改编入索引,是的。尽管如此,没有任何东西会被自动索

0

otheruser是一个完全不同的git回购。它是从原来的,但现在它是独立的。它可以从原始的变化中拉出和合并,但只要对原始文件进行更改,最好的做法是请求它提供的原始文件pull in changes

您是否有直接许可推送otheruser的叉子或不是。我会回答,对于两种情况:

如果分叉:

当你叉这个otheruser,你分叉关闭该叉。因此,您再次根据这个创建一个全新的回购,并且最多可以提出请求来更改该分支。至于推到你的叉,绝对好,在你想要的任何分支上,你想要的任何子目录;现在是你的。

如果你有直接的权限:

这一个非常简单的,只是推到otheruser的主人,因为你有权,像往常一样在你自己的。