我有一个带有
添加的子树的git存储库git subtree add --prefix Agate git@github.com:eylvisaker/AgateLib.git master
问题是Visual Studio想要删除所有这些文件。如果我继续提交,则将删除所有这些文件,并从repo中删除子树。但是,git status
显示nothing to commit, working directory clean
。 SourceTree还显示工作副本中没有编辑任何内容。如果我允许VS提交已删除的文件,则会从repo中删除它们。我可以重新添加子树,但VS仍然想删除它。
我正在使用Visual Studio 2013及其内置的git支持。从子模块切换到使用子树后发生这种情况。我不认为这是相关的,但也许我错了。我的.git / config列在下面。我没有看到任何与众不同的东西。
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
hideDotFiles = dotGitOnly
[remote "origin"]
url = c:/devel/Games/Zodiac/zodiac-test
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
如何让Visual Studio不想删除这些文件,而只是允许我编辑/提交它们就像它们是这个存储库的一部分一样,因为git子树应该允许我这样做?
答案 0 :(得分:1)
看起来我使用子模块时的.gitmodules
遗留下来,导致问题。执行git rm .gitmodules
解决了问题。 Visual Studio立即注意到了这一变化,并决定不再删除我的子树。