5

过了一段时间,我想更新我的 git repo,然后出了点问题。摆脱这种情况的正确方法是什么?

mblsha@siruba:~/src/psi/ $ git status
iris: needs merge
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   modified:   src/common.cpp
#
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#
#   unmerged:   iris
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   gupdate.sh
mblsha@siruba:~/src/psi/ $ git submodule status
+cf237ef8f3d9dc058dbde47e6973e6388608ce60 iris (heads/master)
+cf237ef8f3d9dc058dbde47e6973e6388608ce60 iris (heads/master)
+cf237ef8f3d9dc058dbde47e6973e6388608ce60 iris (heads/master)
mblsha@siruba:~/src/psi/ $ cd iris 
mblsha@siruba:~/src/psi/iris/ $ cat .git/HEAD 
cf237ef8f3d9dc058dbde47e6973e6388608ce60
4

2 回答 2

5

说到 git 子模块,你遇到的几乎所有问题都可以通过以下方式解决:

1. deleting the submodule (rm -r iris)
2. recreating it again (git submodule update)

显然,如果您对子模块进行了本地更改,这将永久删除它们,因此如果您有本地更改,请确保您首先推送它们。

于 2008-11-20T18:18:37.233 回答
3

我在 stackoverflow 上发布了一个类似的问题,最后我自己回答了,但我发现 using 可以git reset HEAD iris解决我的子模块冲突问题。

于 2009-05-07T15:41:48.630 回答