我正在处理我正在处理的rails应用程序中的这个问题.我正在一个功能部门工作,想要从最近的高手中退出.我运行了以下命令:
$git checkout master $git pull --rebase
Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: Gemfile.lock
我已经尝试过以下命令来将Gemfile.lock解析成Aster,其中没有一个成功:
$git checkout -- Gemfile.lock $git stash $git reset HEAD --hard
每次运行一个新的git命令,我都会返回到Gemfile.lock,这些更改没有进行提交.
我正在使用以下版本的图书馆:
$git --version => 2.3.3 $bundler --version => 1.7.9
解决方法
必须有一些进程在后台运行或在执行正在修改Gemfile.lock的shell中的git命令的一些副作用.
我不熟悉rvm的魔法(虽然听起来很合理);这里还有一些其他的事情要检查:
>在Rails的最新版本中,有一个“弹簧”后台进程运行.尝试运行弹簧停止(或bin /弹簧停止或绑定exec弹簧停止)以平稳地终止该进程.>同样,如果您有任何其他Rails相关的进程,如rails server,guard,zeus,sidekiq等,请尝试关闭它们.>您可能正在运行一个git预提交钩子.检查.git / hooks目录.> git可能是您的shell中的另一个命令的别名.运行别名以查看shell别名列表.>您的shell提示符可能正在执行代码,以便在提示符中显示当前的git状态和分支名称.这个代码将在每个shell命令之后执行,以重新绘制提示符,并可能有副作用.检查你的.bashrc或.bash_profile.