0

好的,所以我在这里完全搞糊涂了。我不确定为什么我似乎无法掌握一些 GIT 设置,但我只是没有削减它!请有人帮助我。我已经阅读了大量的教程,但似乎没有什么适合我想要的,所以它只是让我感到困惑。

这是我想做但做不到的事情。

github上有一个开源项目,它有一个分支(开发),我想改进它,然后在以后发布到我自己的服务器上。这个存储库是我可以访问的私有只读。我尝试克隆项目然后制作 shcnages,但我不知道将它们放在哪里。另外,当来自 github 项目的更改时,我仍然不知道如何从 github dev 分支(甚至是 master 分支,当它到达那么远时)正确地获取更新并且不覆盖我自己的东西。

部分困惑是该项目正在使用http://nvie.com/posts/a-successful-git-branching-model/ git-flow 模型,这让我更加失望。

我正在尝试使用http://www.git-tower.com/来管理 GIT。

一些富有同情心的灵魂能否通过一步一步地为我提供这个特定实例的帮助?

4

3 回答 3

1

我将尝试逐步完成此操作,您可以提出问题,以便我可以扩展答案。

  1. 在本地机器上的 github 上克隆存储库。

    这是使用git clone命令完成的。应该这样git clone -b development git://github.com/nibrahim/Xenon-Retroblast.git做。此处的 url 将是只读的,因为您没有对原始存储库的写入权限。我在这里使用了我自己的一个项目作为示例。

  2. Xenon-Retroblast这将在目录中创建一个本地克隆。默认情况下,克隆将指向master分支,但-b您在克隆它时提供的参数应该会处理这一点。

  3. 现在,在本地进行更改并提交它们。

  4. 假设您自己的服务器 hamman.com 并在那里设置了一个存储库。您可以remote使用以下命令将其添加为本地克隆git remote add myown ssh john@hamman.com:~/repos/project.git。这是您的私人存储库,您可以随意使用它。此存储库的本地名称是myown. 如果您是github用户,此远程可以是 github 上的存储库。您也可以在 github 上单击“fork this project”并直接在网站上创建一个 fork,从中克隆并将官方存储库添加为远程。

  5. 要将您的提交推送到此存储库,您必须说git push myown development(将当前分支推送到远程“myown”上的“开发”分支)。要从 github 存储库中获取,例如git pull origin development.

我确信答案是不完整的,但是提出问题,希望我可以为您充实。

于 2011-10-19T06:42:30.650 回答
0

如果你没有写权限,为什么不先 fork 项目呢?

然后您可以创建或修改代码到您自己的分叉项目中。

于 2011-10-19T04:07:29.787 回答
0

您可以从 master 分支创建补丁,然后将其应用到您自己的分支。但是你必须观察主项目的每一个变化,因为 AFAIK github 不会通知你这些变化。

于 2011-10-19T04:12:32.693 回答