Основной вопрос, но это происходит со мной все время:
- Внесите изменения в
working-branch
- Переключитесь на
master
-
git merge working-branch
-
git push
-
cap deploy
(для постановки) - сделайте новую чашку чая
тогда я возвращаюсь и думаю о чем-то другом и начинаю вносить некоторые изменения... пока все еще на хозяине.
Какой простой способ:
- предотвращать прямые изменения на главном устройстве (возможно, предупреждение)
- чтобы переместить все изменения на
working-branch
и очиститьmaster
, поэтому я могу продолжить редактирование наworking-branch
- чтобы отменить редактирование в совершенно новую ветвь
new-working-branch
, а затем отброситьworking-branch
?
Взял на себя риск и попробовал рекомендации в последней части раздела "Филиалы" на этой странице, но это просто уничтожило ВСЕ мои изменения!?! возможно, потому что после git branch dubious-experiment
и git checkout master
git status
на обеих ветвях был идентичен (не "чистый" на главном). Итак, git reset --hard <SHA1sum>
уничтожило все изменения на обоих!?!
git branch dubious-experiment
M---N-----O----P---Q ("master" and "dubious-experiment")
git checkout master
# Be careful with this next command: make sure "git status" is
# clean, you're definitely on "master" and the
# "dubious-experiment" branch has the commits you were working
# on first...
git reset --hard <SHA1sum of commit N>