Как правильно заставить git игнорировать временные файлы, созданные vim во всех каталогах (глобально для всей системы или локально для одного проекта)?
git
vim
ignore
temporary-files
jrdioko
источник
источник
*.sw?
решает стандарт,.swp
но также и альтернативные расширения файла подкачки как.swo
..swf
файлы. Я бы настоятельно не рекомендовал делать это, особенно если вы создаете приложение Flash..
должен предотвратить это..tmp.swp
,.tmp.swo
...,.tmp.swa
), ВИМ создает.tmp.svz
. Мне не хватает терпения, чтобы увидеть, что будет после.tmp.saa
- возможно.tmp.rzz
? ОБНОВЛЕНИЕ: глядя на источник (src/memline.c
, функцияfindswapname()
), он сдается после.saa
с ошибкой: «E326: слишком много файлов подкачки найдено».Ответы:
Временные файлы Vim заканчиваются на ~, так что вы можете добавить в файл
.gitignore
строкуVim также создает файлы подкачки, которые имеют расширения swp и swo. чтобы удалить те, используйте строки:
Это будет игнорировать все временные файлы vim в одном проекте
Если вы хотите сделать это глобально, вы можете создать файл .gitignore у себя дома (вы можете дать ему другое имя или местоположение) и использовать следующую команду:
Затем вам просто нужно добавить файлы, которые вы хотите игнорировать в этот файл
источник
.*.sw*
в моей ,.gitignore
чтобы скрыть их всех..*.sw?
что будет более точным. (Хотя я видел, как люди используют какой-то вариант,*.sw*
чтобы заподозрить, что я.*.s[a-w][a-z]
будет игнорировать.svg
файлы.В качестве альтернативы вы можете настроить vim для сохранения
.vimrc
файлов подкачки в отдельном месте, например, добавив в файл строки, подобные приведенным ниже :Смотрите этот совет vim для получения дополнительной информации.
источник
$TMPDIR
для получения фактического tempdir :)$TEMP
значит?set undodir=$TEMP//
, так как я также сохраняю постоянные файлы отмены.Это то, что должно быть сделано только для каждого пользователя, а не для каждого хранилища. Если Джо использует emacs, он захочет игнорировать файлы резервных копий emacs, но Бетти (которая использует vi) будет хотеть игнорировать файлы резервных копий vi (во многих случаях они похожи, но существует около 24 893 общих редакторов, и это довольно Смешно пытаться игнорировать все различные расширения для резервного копирования.)
Другими словами, не вставляйте ничего внутрь
.gitignore
илиcore.excludes
внутрь$GIT_DIR/config
.$HOME/.gitconfig
Вместо этого введите информацию (как предлагает nunopolonia--global
.) Обратите внимание, что «глобальный» означает для пользователя, а не для системы.Если вы хотите настроить систему для всех пользователей (чего у вас нет), вам понадобится другой механизм. (Возможно с настройкой шаблонов до инициализации хранилища.)
источник
Я также рекомендовал бы подумать, чтобы игнорировать такие файлы, как:
как у вас могут быть файлы, которые заканчиваются на
.swp
источник
Выйдите из vim перед "git commit".
чтобы
vim
использовать другие папки для файлов резервных копий (/tmp
например):чтобы vim прекратил использовать текущую папку для файлов .swp:
Использование в
-=, +=
целом было бы хорошо, потому что vim имеет другие значения по умолчанию для bdir, dir , мы не хотим очищать все. Проверьте справку vim для получения дополнительной информации о bdir, dir :источник
Вот фактический код VIM, который генерирует расширения файла подкачки:
Это создаст файлы подкачки в формате:
Это в значительной степени то, что включено в собственный файл gitubore для VIM от github .
Как правильно заметили другие, этот .gitignore также будет игнорировать файлы изображений .svg и файлы .swf Adobe Flash.
источник
Я обнаружил, что git игнорирует временные файлы, созданные vim:
Это также можно посмотреть здесь .
источник
.swf
файлы, которые появляются каждый раз, когда вы создаете флэш-приложение..svg
что может быть проблемой.*.un~
*~
конечно,
просто нужно создать «.gitignore» в домашнем каталоге вашего проекта и содержать
Это оно
в одной команде
источник
echo *.swp >> .gitignore
что лучше избегать переопределения предыдущего .gitignore.echo '*.swp' >> .gitignore
>
персонажей. Однажды я сделал это сpasswd
файлом, затем вышел из системы :-)http://vimdoc.sourceforge.net/htmldoc/recover.html
http://www.vim.org/scripts/script.php?script_id=1075
источник
В моем случае временные файлы уже зафиксированы предыдущими действиями, поэтому изменение .gitignore не повлияет на эти закомментированные файлы ...
git rm files_to_be_ignored --cache
сначала нужно выполнить , затем зафиксировать, а затем ВЫПОЛНИТЬ.источник
Это работает на Mac, как отметил Алекс Мур-Ниеми:
Убедитесь, что используете
TMPDIR
и нетTEMPDIR
.источник
Если вы используете контроль версий. временные файлы vim совершенно бесполезны.
Так что вы можете настроить vim, чтобы не создавать их.
Просто отредактируйте Ваш ~ / .vimrc и добавьте эти строки:
источник
screen
(илиdtach
ему не нужны все функции экрана). Отключения питания обрабатываются ИБП. Резервные копии создаются {вашим любимым программным обеспечением для резервного копирования всех важных файлов}. Я использую файлы подкачки, чтобы получать уведомления при попытке отредактировать уже отредактированные файлы, резервные копии файлов, потому что наличие N + 1-го места с резервной копией не вредит и отменяет файлы, потому что постоянная отмена удобна. Только файлы отмены немного важны для меня.