我尝试启动我的localhost:3000 RoR应用程序。 终端发生了什么:
[omrails]$rails s
Gemfile syntax error:
<<<<<<< HEAD
^
我尝试在Google和Stackoverflow上搜索,但没有发现任何与我类似的问题。我假设ny Gemfile有问题,但我不知道到底是什么。
My Gemfile如下所示:
source 'https://rubygems.org'
gem 'rails', '3.2.8'
gem 'bootstrap-sass'
gem 'devise'
gem 'omniauth'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
group :development do
gem 'sqlite3'
end
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', :platforms => :ruby
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
group :production do
gem 'pg', '0.12.2'
end
# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'
# To use Jbuilder templates for JSON
# gem 'jbuilder'
# Use unicorn as the app server
# gem 'unicorn'
# Deploy with Capistrano
# gem 'capistrano'
# To use debugger
# gem 'debugger'
我的Gemfile中可能有什么问题吗? 如果您有任何其他问题或要求,请不要犹豫,问我。
答案 0 :(得分:5)
这个地区:
<<<<<<< HEAD
group :development do
gem 'sqlite3'
end
=======
# gem 'sqlite3'
>>>>>>> 154ef24b95ea600ced834457e146c2fb27a18156
是git合并冲突。它表示当前版本(HEAD)和您提取的另一个提交(154ef24b95ea600ced834457e146c2fb27a18156)都发生了变化。每个区域都会显示不同文件的内容供您阅读。
当您遇到这样的冲突时(通常是通过运行git merge
或git rebase
或git pull
),那么假设实际在执行git add
标记为已解决之前修复冲突。您可以通过查看由=======
分隔的两个区域来确定要保留的区域。
有时你必须决定如何将两者合并为一个能够完成两项修改的内容,但在这种情况下,你可能只是想扔掉已注释掉的部分。如果你删除以<<<<<<<
开头的行,以及========
和>>>>>>>>
行之间的所有行,那么你应该好好去。
一般来说研究git merge和rebase程序可能没有什么坏处 - 它们很强大但如果你不熟悉可能会有点复杂。
答案 1 :(得分:1)
您已在Git中提交了合并冲突的结果。
您需要删除这些行,并特别注意确保代码符合您的预期。
<<<<<<< HEAD
group :development do
gem 'sqlite3'
end
=======
# gem 'sqlite3'
>>>>>>> 154ef24b95ea600ced834457e146c2fb27a18156
您可以查看当前HEAD
中的内容以及合并时154ef24b
中的内容。通过删除冲突标记并保留/修改任何一方的块来选择解决方法。
答案 2 :(得分:0)
正如亚历克斯所说,你已经在git中提交了合并冲突的结果。当他说要密切关注代码是你所期望的时候,你需要更多关于他的意思的细节。您不希望仅删除冲突标记(&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;,==========,&gt;&gt;&gt;&gt;&gt;&gt;&gt; &gt;&gt;&gt;&gt;&gt;),您需要实际解决冲突。
进行合并后, HEAD
有以下内容:
group :development do
gem 'sqlite3'
end
在包含您在(154ef24b95
)合并的提交的分支中,您有:
# gem 'sqlite3'
这(似乎)意味着当合并完成时HEAD
在开发中使用sqlite并且提交154ef24b95
已经决定不这样做。你肯定想知道你在项目中真正想要的版本。不要只删除冲突标记。