克隆一个Github回购

时间:2013-03-27 16:54:31

标签: git github moodle

我从原始官方回购moodle分出了一个回购。它有超过15个分支,master作为分支。然后我在我的本地机器上克隆它。假设我将其克隆到project文件夹中,并创建了大约50 folders

执行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。因此,该用户将此gs分支维护在master的同一moodle分支下。现在,要在我的本地计算机上克隆它,我创建了一个远程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时,它创建了额外的子目录。所以,我的意思是我无法理解它是如何工作的?如果我对这些额外的子目录进行任何更改,然后将其推送到master分支下的我的Github帐户,它会没事吗?

2 个答案:

答案 0 :(得分:0)

只要在提交之前索引子目录中的更改,是的。但是,没有任何内容会自动编入索引。

答案 1 :(得分:0)

otheruser是一个完全不同的git repo。它是从原来的分叉,但现在它是独立的。它可以从原始版本中提取和合并更改,但只要对原始版本进行更改,它可以做的最好就是请求它创建的原始pull in changes

你不清楚是否有直接许可推送到otheruser的分叉。我会回答两个案例:

如果您分叉:

当您对此otheruser进行分叉时,您正在分叉该分叉。因此,您再次创建一个基于该回购的全新回购,并且最多可以请求更改该分支。至于推动你的前叉,绝对没问题,你想要的任何分支,你想要的任何子目录;这是你的。

如果您有直接许可:

这个很简单,只需按下otheruser的主人就可以了,因为你有权这样做,就像你通常自己一样。