1

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

在不破坏大师的情况下,开始这个项目的正确方法是什么?

4

2 回答 2

2

GitHub 只是 git 存储库的托管。好吧,写作并没有给予它适当的正义

但是,您应该了解真正git的工作原理。我衷心推荐阅读免费的Git Book

简而言之:

  1. git是分布式的
  2. 你只在本地工作副本上工作
  3. 如果您没有明确告诉 git您想要跟踪文件 - 它不会(惊喜,惊喜!)。

因此运行bundle install 不会修改git 跟踪的内容,特别是不会影响 remote master。在您修改一些已被跟踪的文件之前,它不会修改您的主文件。我认为bundle install没有。master即使这样,您也需要修改远程commit并进行push更改。

您可以在您的master. 它是安全的。

于 2013-01-30T20:02:42.847 回答
1

如果是别人的项目,或者开源项目,你应该在 Github 上 Fork 项目。然后克隆叉子。这将允许您在项目上工作,在本地提交您的更改并将它们推送回分叉的存储库。

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

git checkout master
git merge my_branchname

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

bundle命令与 RVM 一起使用只会在本地安装 gem,很可能在您的主目录 ( ~/.rvm) 中。Gems 没有与其余代码打包在一起,因此您不必担心会弄乱主存储库。

于 2013-01-30T20:04:51.217 回答