Этот вопрос кажется действительно сложным, но это не так - путь из этого.
Полная процедура, начиная с git-репо (repo1) с подмодулем (repo2).
$ git clone git@git:myproject.git
$ cd myproject
$ git submodule update --init
Теперь, если мне нужно пометить старый коммит моего репо2, вот что я буду делать:
$ cd repo2
$ git checkout SOMECOMMITHASHORTAGORELSE
$ cd ..
$ git add repo2
add
важно обновить gitlink
до хэша коммитов репо2
$ git commit repo2
$ git tag TAGNUMBER
$ git push (--tags if you want to push the tag also)
Теперь, почему submodule update
не работал? Дело в том, что я продолжал пытаться оформить коммит, связанный с тегом repo1
$ git checkout TAGNUMBER
$ git submodule update
Это не сработало только потому, что (примечание к себе) я забыл, что:
Пометить ПОСЛЕ совершения
Так что здесь не было настоящей хитрости, просто небольшая ловушка, которая может повториться для некоторых из нас, надеюсь, они здесь окажутся.