我把gemfile和gemfile.lock推送到我的分支,我必须合并到master吗?

时间:2015-12-23 20:26:42

标签: ruby-on-rails git github

我为9个文件做了git add,git commit和git push(其中2个是Gemfile和Gemfile.lock)。我的团队告诉我,我们在代码审查中不需要Gemfile和gemfile.lock。恢复这两个文件最简单的方法是什么? (我想保留其他7)。我将这些更改推送到我的分支,当我合并到掌握时,我可以忽略它们吗?或者我应该以某种方式将更改恢复为2个文件(Gemfile和gemfile.lock)?

1 个答案:

答案 0 :(得分:3)

最简单的方法是将GemfileGemfile.lock重置为master上的当前状态。

你可以用两种方式做到这一点;通过添加新的提交来放弃对这些文件的更改,或者通过修改引入这些更改的提交。

前者是最简单的。在您的分支上添加新的提交,放弃您对GemfileGemfile.lock所做的更改:

  1. 使用Gemfile和Gemfile.lock
  2. 检查您当前状态的分支
  3. 查看master的{​​{1}}和Gemfile版本:

    Gemfile.lock
  4. 添加并提交更改

    $ git checkout master -- Gemfile Gemfile.lock
    
  5. 现在您可以推送,更改将从您的分支中消失。

    请注意,这是一个更简单的解决方案,但它会使您的分支处于略微奇怪的状态,同时引入和删除某些文件的更改。完成此操作后,您可以在合并之前squash your entire branch down to a single commit,并且将放弃对$ git add Gemfile Gemfile.lock $ git commit -m "Discard changes to Gemfile and Gemfile.lock" Gemfile进行不必要的更改的所有历史记录。