在现有的开源项目上合作 - 我如何使用git / github?

时间:2012-02-04 19:38:38

标签: git open-source github collaboration gitx

我和我的朋友想要开发一个通过git托管/工作的开源项目。

我尝试在谷歌上关注许多链接,但无法以精确/准确的方式进行协作。

我们都有github帐户,并且希望能够创建一个与我们想要处理的项目(共享)完全相同的分支(或其所谓的分支),然后对其进行更改。因此,当变更准备就绪时,我们可以要求项目人员查看并轻松整合我们的工作。

我们都希望跟踪我们在本地退房时单独进行的更改。因此,当它被推向项目时,我们知道谁在做什么。

有人可以指导我吗?

1 个答案:

答案 0 :(得分:5)

由于该项目已经存在于github上......

要么1)作为协作者添加或2)'分叉',然后为您的更改提交“拉取请求”。

接下来,通过单击github上的“copy”图标然后在本地执行git clone -paste-(克隆存储库(如果您是协作者,则为主要存储库,或者如果您已经分叉,则为您的用户名下的存储库) shift-control-v粘贴在终端窗口中。)

这将获取存储库并生成本地副本,这意味着您通常会看到所有文件,以及通过.git(隐藏文件)结构的“实际”git存储库'幕后'。实际上,在将文件推送到远程存储库之前,您可以添加和提交文件。

所以,当你是一个合作者时,你可以推送到中央存储库,否则它就是“你的叉子”。

如果你为所有这些做了一个分支,你最后在本地添加/提交你的更改,然后将它们推送到github(尽管这是你的分叉)。他们(在github中)点击你的fork页面的“pull request”,然后向源存储库维护者提交一个通知,告知你有你想要提交的更改“。

因此,考虑一下当您是协作者时推送的代码的即时提交 - 当您可能想要分支(本地)时,因为您可以最初将这些更改与主代码库分开。您仍然可以将这些分支推送到主github存储库。 如果您刚刚开始使用这一切,您可能还会发现gitx(Mac)或gitg(Linux)是所有这些的惊人视觉工具。您可以根据需要了解谁能够轻松完成哪些工作。我把它称为'伦敦地下观众'!

view of gitg/gitx