Есть ли простой способ.zip-архив моего исходного кода с Visual Studio 2013?

Работая над созданием новых проектов Visual Studio, чтобы опробовать различные технологии, или проект выходного дня, я хочу простой способ заархивировать исходный код и не беспокоиться о файлах.pdb, obj/bin и т. Д.

Так много лет назад я создал набор файлов.bat, один из которых:zipall.bat, который выглядит так:

del all.zip
pkzip -add -excl=Backup\* -path -rec all

Перед запуском я бы запустил другой пакетный файл:clean.bat, который выглядит так:

del/f/s/q *.aps        2>nul
del/f/s/q *.bsc        2>nul
del/f/s/q *.exp        2>nul
del/f/s/q *.idb        2>nul
del/f/s/q *.ilk        2>nul
del/f/s/q *.lib        2>nul
del/f/s/q *.ncb        2>nul
del/f/s/q *.obj        2>nul
del/f/s/q *.opt        2>nul
del/f/s/q *.pch        2>nul
del/f/s/q *.pdb        2>nul
del/f/s/q *.plg        2>nul
del/f/s/q *.sbr        2>nul
del/f/s/q *.suo        2>nul
del/f/s/q *.sdf        2>nul

del/f/s/q /ah *.suo        2>nul

del/f/s/q BuildLog.htm    2>nul

for /f "delims=;" %%i in ('dir "TempPE" /s/b /ad')         do rmdir /s/q "%%i"
for /f "delims=;" %%i in ('dir "obj" /s/b /ad')            do rmdir /s/q "%%i"
for /f "delims=;" %%i in ('dir "_ReSharper*" /s/b /ad')    do rmdir /s/q "%%i"
for /f "delims=;" %%i in ('dir "TestResults*" /s/b /ad')   do rmdir /s/q "%%i"

Периодически мне приходилось обновлять список расширениями, представленными более новыми инструментами.

Кстати, причина для опции "excl=Backup*" в pkzip заключается в том, что я поддерживаю резервные копии zip-файлов. backup.bat выглядит так:

mkdir Backup 2>nul
if not exist all.zip goto :eof
set datex=%date:/=-%
set timex=%time::=-%
set filename="Backup\%datex% %timex%.zip"
copy all.zip %filename%

Поскольку в Visual Studio 2013 встроен Git, я больше не беспокоюсь о резервных копиях.

При создании нового проекта в Visual Studio 2013, если вы укажете "Создать новый репозиторий Git", он создаст скрытый файл.gitignore, который является более исчерпывающим, чем мой clean.bat. Есть ли способ использовать этот список с pkzip, чтобы при архивировании он игнорировал файлы в.gitignore?

1 ответ

Решение

Файл.gitignore создается при создании проекта Visual Studio с выбранным "Создать новый репозиторий Git".

Вам не нужно использовать pkzip, потому что Git имеет встроенную функцию архивации.

Просто наберите: git archive -o all.zip HEAD

и он создаст all.zip из последнего исходного кода, без каких-либо вещей, которые вам не нужны в файле.zip, таких как bin, obj, exes, сборки nuget и т. д.

Другие вопросы по тегам