git scenarios and solutions