I Git слился мое репо фекли-узел в мое репо сан . Команды
$ git remote add -f node git@github.com:feklee/feklee-node.git
$ git merge -s ours --no-commit --allow-unrelated-histories feklee-node/master
$ git read-tree --prefix=node/ -u node/master
$ git commit # done from Emacs Magit IIRC
$ mv node/ nodes/pcb/
Затем я сделал некоторые изменения в репо san и хотел вернуть изменения в поддереве обратно в feklee-node . Я так и сделал (что, очевидно, было плохой идеей):
$ git push node master # node = git@github.com:feklee/feklee-node.git
Это выдвинуло все содержимое san в feklee-node . О нет!
Как мне отменить этот массивный git push?
А также мне интересно, как протолкнуть только поддерево.
Обновление
Я вернулся к старой фиксации, переписав историю:
$ git reset --hard 87b2d1aaea1c0a628c4725e2ea16682f344f102e
$ git push --force
Здесь мне повезло, потому что у меня еще была открытая вкладка браузера с репозиторием GitHub в состоянии до массового пуша. Показал вышеуказанный хеш.