in lib/between_meals/repo/hg.rb [155:210]
def parse_status(changes)
changes.lines.map do |line|
parts = line.chomp.split(nil, 2)
case parts[0]
when 'A'
{
:status => :added,
:path => parts[1],
}
when 'C'
{
:status => :clean,
:path => parts[1],
}
when 'R'
{
:status => :deleted,
:path => parts[1],
}
when 'M'
{
:status => :modified,
:path => parts[1],
}
when '!'
{
:status => :missing,
:path => parts[1],
}
when '?'
{
:status => :untracked,
:path => parts[1],
}
when 'I'
{
:status => :ignored,
:path => parts[1],
}
else
fail 'Failed to parse repo diff line.'
end
end
end