Ruby Tic-Tac-Toe using classes
Some suggestions:


Avoid flags. Oftentimes there are a hint that you can structure your code better
Learn the available language constructs and methods (e.g. case/when or #any?)
Avoid methods with side effects when you can better use a functional style. (E.g. a implement solutions method returning the solutions instead of a make_solutions method which modifies an instance variable with even has to be initialized before the call.) Among other things this improves reusability. You can still cache results in instance variables if needed.


Considering this you can write your provided code snippets a little neater: 

def get_mark
  while (mark = gets.chomp)
    case mark
    when /x/i then chose_x
    when /o/i then chose_y
    else
      puts &lt;&lt;-EOS.gsub(/^ */, '')

      What is this strange mark? please choose 'X' or 'O'!
      EOS
      continue
    end
    break
  end
end

def game_won?
  solutions.any? do |solution|
    solution[0] != ' ' &amp;&amp; solution[0] == solution[1] &amp;&amp; solution[1] == solution[2]
  end
end


I didn't dig through your git repo though. If you have more specific questions you should ask them.