#vim #mercurial #hgignore
#vim #mercurial #hgignore
Вопрос:
Я пытался внести некоторые изменения, пока у меня были открыты некоторые файлы в vim, и при фиксации, слиянии и сортировке в итоге получилось:
alex@adebian:~/cs4290/p3$ hg status
R test
! project3_framework/protocols/.MI_protocol.cpp.swp
! project3_framework/protocols/.MSI_protocol.cpp.swp
Я добавил .hgignore
файл в свой проект со следующим:
syntax: glob
*.cpp.swp
С тех пор я закрыл свой сеанс vim (удалив файлы), но файлы продолжают отображаться. Как мне заставить mercurail игнорировать swp-файлы?
Ответ №1:
!
знак означает, что mercurial не может найти файл, который уже был добавлен в репозиторий. Итак, сначала вам нужно forget
или remove
эти файлы. После этого — они больше не будут отображаться в status
, поскольку вы их проигнорировали.
Ответ №2:
Я согласен с zerkms… forget
или remove
от этих файлов избавиться !
. Кроме того, как вы, вероятно, заметили, простое создание файла .hgignore с некоторым содержимым не приводит к просмотру репозитория и удалению соответствующих файлов. Если вы добавили foo.c
в свой проект, а затем создали следующий .hgignore:
syntax: glob
*.c
foo.c
он по-прежнему будет частью проекта — вам нужно будет явно удалить его.
Ответ №3:
Вы можете использовать set directory=c:\workfiles\
в своем .vimrc для записи файлов подкачки в «специальную» папку
Комментарии:
1. Это полезный обходной путь. Единственным недостатком является наличие двух файлов из разных папок с одинаковым именем.
2. Только что попробовал это на моем linux-сервере, получил файл с именем index.php.swp index.php.swo. Кажется, работает, по крайней мере, для меня.