Попробуйте приведенный ниже. Он работал для меня .
import zipfile, os
zipf = "compress.zip"
def main():
directory = r"Filepath"
toZip(directory)
def toZip(directory):
zippedHelp = zipfile.ZipFile(zipf, "w", compression=zipfile.ZIP_DEFLATED )
list = os.listdir(directory)
for file_list in list:
file_name = os.path.join(directory,file_list)
if os.path.isfile(file_name):
print file_name
zippedHelp.write(file_name)
else:
addFolderToZip(zippedHelp,file_list,directory)
print "---------------Directory Found-----------------------"
zippedHelp.close()
def addFolderToZip(zippedHelp,folder,directory):
path=os.path.join(directory,folder)
print path
file_list=os.listdir(path)
for file_name in file_list:
file_path=os.path.join(path,file_name)
if os.path.isfile(file_path):
zippedHelp.write(file_path)
elif os.path.isdir(file_name):
print "------------------sub directory found--------------------"
addFolderToZip(zippedHelp,file_name,path)
if __name__=="__main__":
main()
Я не уверен, какая часть этой информации будет сохранена, но настройки импорта / экспорта инструментов сохранят большую часть состояния в Visual Studio, если вы все экспортируете. Это не быстрый процесс нажатия кнопки, поэтому он может быть немного тяжелым для того, что вы ищете.
Инструменты-> Импорт / экспорт сохранят только настройки среды (цвета шрифтов, расположение окон и т. Д.).
Вам следует обратить внимание на Инструменты-> Параметры-> Среда-> Автовосстановление
Это не даст вам кнопку, которую можно нажать, чтобы сохранить ваше "состояние", но он должен делать все, что вы искали, автоматически.
Когда студия вылетает из строя, обычно мастер автоматического восстановления должен выскочить при перезапуске.
В противном случае файлы копируются в ... \ Мои документы \ Visual Studio \ Backup Files \.
Вот что я делаю, и это, кажется, работает для меня,
Это становится немного запутанным, когда вы открываете несколько окон и меняете одни настройки в одном из них, а другие - в другом. ключ в том, чтобы при выполнении персонализации было открыто одно окно и закрывалось, как только вы закончите.
Если у вас есть решение . suo или проект .csproj. user файлы под контроль версий?
Оба этих типа файлов не должны контролироваться версиями, например, в Subversion вы должны установить свойство svn: ignore для типов файлов * .suo и * .user в каталоге, к которому они принадлежат.
Я считаю, что они хранить информацию о состоянии вашей рабочей области.