我将一个存储库拆分为3个,一个带有git子树的跟踪存储库,以及两个存储库,我将其拆分为模块。不知何故,我设法将带有子树的版本推送到其中一个子库,这搞乱了结构。
这里它们仅供参考:
如何恢复存储库?
答案 0 :(得分:1)
首先,进行备份,因为你将掌握历史记录。
在本地child1存储库中,在问题开始之前确定版本的哈希值,然后将所有历史记录一直吹掉:
cd path/to/separate/broken/child1
git reset --hard 7b202bfc915042c714aeca9516daf67d81c36b61
强制将这些更改推送到远程
git push --force
切换后的问题现在应该消失了。切换到父级,然后正确推送更改
cd path/to/parent1
git subtree push --prefix path/to/child1/in/parent remotechildname master
然后应该解决问题