Git全域性忽略和Vim Session的結合

diabloneo發表於2015-07-07

Git的全域性忽略功能

我知道這個功能也是通過Google來的,Stack Overflow上的一個回答給出了方案,地址是:http://stackoverflow.com/questions/7335420/global-git-ignore。我這裡就當做是翻譯一下了。這裡的全域性忽略是隻git的global級,也就是一個使用者的範圍內有效,不是系統範圍內有效。

要實現git的全域性忽略,可以在通過配置全域性的core.excludesfile選項來指定一個.gitignore檔案,然後所有的git殘酷都會載入這個.gitignore。指定這個選項的做法有兩種,假設我們指定檔案~/.gitignore作為全域性忽略檔案,一種方式是通過命令列:

$ git config --golbal core.excludesfile `~/.gitignore`

另一種方式是直接修改git的global配置檔案~/.gitconfig

$ cat ~/.gitconfig
...
[core]
    excludesfile=~/.gitignore
...

然後把你要全域性忽略的規則放到~/.gitignore中就可以了。

Git全域性忽略和Vim Session

Vim有一個session功能,可以用來儲存Vim現在開啟的檔案、視窗布局等設定,相當於是很多GUI編輯器的“下次登陸自動開啟上次未關閉的檔案”的功能。在Vim中要實現這個功能很簡單,只要在關閉Vim前,先執行Vim命令::mksession。該命令會在當前目錄下儲存一個Session.vim檔案。下次你要在該目錄下繼續工作時,就可以在啟動Vim的時候直接讓Vim載入上次儲存的會話檔案:$vim "+source Session.vim"。是不是很方便?

那麼,Vim預設儲存的會話檔案Session.vim一般是和專案無關的。對於git倉庫來說,看到它出現在git status的結果中是很煩的。現在你應該知道怎麼做了吧?沒錯,就是把這個檔名加入到全域性的git忽略檔案中。

相關文章