我有一个Visual Studio 2008解决方案,包含7个不同的项目。这些“项目”中有3个是网站(没有项目文件的那种项目)。如何从VS网站中删除VSS挂钩?
我已经从所有目录中剥离了所有各种Visual Sourcesafe文件,删除了SLN文件中的Scc引用以及所有存在的项目文件。我删除了SUO文件和所有USER文件。 Visual Studio仍认为其中2个网站仍处于源代码控制之下,并且将Scc条目添加回SLN文件中。
有谁知道怎么样 VS还知道旧的源代码管理吗?
编辑: 我没有提到另一件事是,我试图从已复制VSS的已知的工作目录中,python脚本运行并手动编辑的文件之外,除去VSS钩子文件在VS 2008或VS 2005中打开解决方案之前制作的(我遇到了这两个问题)。
这是一个python脚本,我用它来清除这些文件,并让我知道需要手动编辑哪些文件。
import os, stat
from os.path import join
def main():
startDir = r"C:\Documents and Settings\user\Desktop\project"
manualEdits = []
for root, dirs, files in os.walk(startDir, topdown=False):
if '.svn' in dirs:
dirs.remove('.svn')
for name in files:
os.chmod(join(root,name), stat.S_IWRITE)
if name.endswith(".vssscc") or name.endswith(".scc") or name.endswith(".vspscc") or name.endswith(".suo") or name.endswith(".user"):
print "Deleting:", join(root, name)
os.remove(join(root,name))
if name.endswith("sln") or name.endswith("dbp") or name.endswith("vbproj") or name.endswith("csproj"):
manualEdits.append(join(root, name))
print "Manual Edits are needed for these files:"
for name in manualEdits:
print name
if __name__ == "__main__":
main()
好奇你为什么通过python脚本完成此操作,而不是使用Visual Studio中的内置源代码管理管理来删除源代码控制绑定? – ahockley 2009-01-22 23:26:13
我只能说我自己;但是为大量文件做这件事很愚蠢;您的其他选择是尝试使用Visual Studio编写脚本,并且我宁愿用勺子舀出我的眼球。或者只写一个python脚本。 – llimllib 2009-01-23 02:22:31
这个特别的项目,我只需要手动编辑5个文件,所以它不是一个巨大的壮举。无论如何,你可以看看llimllib的脚本,它应该自动化我的脚本的'手动'部分。 – 2009-01-26 17:14:46