2011-04-19 86 views
3

我試圖把一些變化,而我有一些文件在vim打開,並同時提交和合並和排序,最終想出:如何讓Mercurial忽略Vim的.swp文件?

[email protected]:~/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文件?

回答

8

!符號表示mercurial找不到已添加到存儲庫的文件。所以你首先需要forgetremove這些文件。之後 - 他們不會再出現在status中,因爲您已經忽略了它們。

3

我同意zerkms ... forgetremove這些文件來擺脫!。另外,正如您可能已經注意到的那樣,僅僅創建一個帶有一些內容的.hgignore文件不會通過存儲庫並刪除匹配的文件。如果您已經將foo.c到您的項目,然後創建以下.hgignore:

syntax: glob 
*.c 

foo.c仍然會是項目的一部分 - 你需要明確地將其刪除。

2

您可以使用 set directory=c:\\workfiles\\ 在.vimrc寫在一個「特殊」的文件夾

+0

這是一個有用的解決方法交換文件。唯一的缺點是如果你有兩個來自不同文件夾的同名文件。 – amccormack 2011-05-18 11:05:59

+1

剛剛在我的linux系統上試用過,得到一個名爲index.php.swp index.php.swo的文件。似乎工作,至少對我來說。 – vbd 2011-05-19 15:26:48