Commits


check the status of specified paths before staging any of them


simplify a block of code in check_out_of_date()


fix 'mv foo bar; got rm foo; got add bar' and put paths in error messages


fix and test interaction of rebase/histedit -c and 'got stage'


use get_worktree_paths_from_argv consistently; improves add/rm edge cases Double 'got rm' becomes a no-op like double 'got add' already is, and 'got add' of an already staged file is now an error.


unstage: report new current status for deleted unstaged paths


initial 'got unstage' implementation


make 'got commit' work with changed stanges


fix out-of-date check regression; only commit staged files after 'got stage'


ensure that 'got update' refuses to update staged files


ensure that 'got histedit' refuses to run while shanges are staged


reject staging of out-of-date files


handle conflicted files passed to 'got stage'


implement got diff -s


handle double-staging