Ruby on rails 我将gemfile和gemfile.lock推到我的分支,我必须合并到master吗?

Ruby on rails 我将gemfile和gemfile.lock推到我的分支,我必须合并到master吗?,ruby-on-rails,git,github,Ruby On Rails,Git,Github,我对9个文件(其中2个是Gemfile和Gemfile.lock)进行了git添加、git提交和git推送。我的团队已经通知我,在代码审查中不需要Gemfile和Gemfile.lock。还原这两个文件的最简单方法是什么?(我想保留另外7个)。我将这些更改推送到我的分支,当我合并到master时可以忽略它们吗?或者我应该以某种方式恢复对这两个文件(Gemfile和Gemfile.lock)的更改吗?最简单的方法是在主机上将Gemfile和Gemfile.lock重置为当前状态 你可以通过两种方式

我对9个文件(其中2个是Gemfile和Gemfile.lock)进行了git添加、git提交和git推送。我的团队已经通知我,在代码审查中不需要Gemfile和Gemfile.lock。还原这两个文件的最简单方法是什么?(我想保留另外7个)。我将这些更改推送到我的分支,当我合并到master时可以忽略它们吗?或者我应该以某种方式恢复对这两个文件(Gemfile和Gemfile.lock)的更改吗?

最简单的方法是在
主机上将
Gemfile
Gemfile.lock
重置为当前状态

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

前者是最简单的。在分支上添加一个新的提交,该提交将丢弃您对
Gemfile
Gemfile.lock
所做的更改:

$ git checkout master -- Gemfile Gemfile.lock
  • 使用Gemfile和Gemfile.lock检查处于当前状态的分支
  • 查看
    Gemfile
    Gemfile.lock的
    master
    版本:

    $ git checkout master -- Gemfile Gemfile.lock
    
  • 添加并提交更改

    $ git add Gemfile Gemfile.lock
    $ git commit -m "Discard changes to Gemfile and Gemfile.lock"
    
  • 现在您可以推送,更改将从您的分支中消失


    请注意,这是一个更简单的解决方案,但它会使您的分支处于一种稍微奇怪的状态,包括引入和删除对某些文件的更改。完成此操作后,您可以在合并之前删除所有对
    Gemfile
    Gemfile.lock
    不必要引入的更改的历史记录。

    您的分支上有多少次提交?
    master
    是否已经包含Gemfile和Gemfile.lock的版本?@meagar Yes,确实如此。您的提交是否不依赖于
    Gemfile
    中的更改(假设您添加了gems?)