了解GitHub工作流程;从github克隆后该怎么办?

时间:2013-01-30 19:53:09

标签: ruby-on-rails github workflow

我正在使用RoR,最近通过GitHub克隆了一个项目。我有一个特定的RVM gemset用于这个项目,但内部没有任何内容。我不确定是否应该创建一个新分支,然后运行bundle install,反之亦然。我担心的是我不想在主分支上工作,但我知道我需要先设置所有内容bundle install

开始这个项目的正确方法是什么,没有打破主人?

2 个答案:

答案 0 :(得分:2)

GitHub只是git存储库的托管。好吧,写只是并没有给予正确的公正。

但是,您应该了解真正的git是如何运作的。我衷心建议免费阅读Git Book

简而言之:

  1. git已分发
  2. 您只在本地工作副本上工作
  3. 如果你不告诉git 具体你想要跟踪一个文件 - 它不会(惊讶,惊讶!)。
  4. 因此,运行bundle install 不会修改 git跟踪的内容 - 具体而言 - 不会影响远程master。在修改已经跟踪的某些文件之前,它不会修改您的主人。我认为bundle install没有。即使这样修改远程master,您也需要进行commitpush更改。

    您可以使用master。这很安全。

答案 1 :(得分:1)

如果是其他人的项目,或者是一个开源项目,你应该在Github上实现项目。然后克隆fork。这将允许您处理项目,在本地提交更改并将它们推回到分叉存储库。

如果它是您自己的项目,并且您确实想要在分支中工作,那么克隆存储库并创建分支git checkout -b my_branchname。然后,您将在分支中工作,将代码检入分支。最终,您需要将此分支合并到主分支中。为此,您可以在本地合并:

git checkout master
git merge my_branchname

或者,您可以在Github上创建一个pull请求,然后通过Github Web UI将分支合并到master中。

与RVM结合使用的bundle命令只会在本地安装gem,很可能是在您的主目录(~/.rvm)中。宝石不会与其余代码打包在一起,因此您不必担心搞乱主仓库。