SVN設置忽略文件列表
在公司中項目的版本管控一般都是使用集中式的SVN,我也是從svn工具中熟悉基本的版本管理概念和操作。但是作為一個Linux系統及應用開發者,自然對Git分布式管理工具要有所熟悉。現在個人項目管理都是使用git進行版本控制,對git的一些操作也比較熟悉,而svn一般用的是Windows下的圖像工具,而對svn的命令行稍顯陌生。
在git工具中,設置忽略文件只需要修改版本庫根目錄下的.gitignore文件就可以了,沒有的話創建一個,非常簡單,一個示例的.gitignore文件如下:過濾文件模式以行進行分隔
01
*.o
02
*.lo
03
*.la
04
*.gcda
05
*.gcno
06
aclocal.m4
07
autom4te.cache
08
build
09
compile
10
config.guess
11
config.h
12
config.h.in
13
config.h.in~
14
config.log
15
config.status
16
config.sub
17
configure
18
depcomp
19
.deps
20
install-sh
21
.libs
22
libtool
今天在使用svn時想設置忽略一些臨時的項目開發文件,一下子不知道怎麼弄,上網搜索和實踐後,發現也不難,在此記錄一下。配置的方法有以下幾種:
Linux下svn命令行配置
1. 修改版本庫的相關屬性
$ svn propedit svn:ignore dir
其中 dir 就是你所想設置過濾文件列表的目錄,執行命令之後,會出現編輯界面,按照空格將你想過濾文件(通常使用通配符的方式)以空格分開,保存退出即可。這個屬性是針對版本庫進行的修改,因此需要提交這個修改。svn:ignore是svn的一個參數。
注意:這個設置無法遞歸,也就是如果 dir 目錄下還有子目錄的話,是單獨設置的。
2. svn 客戶端的配置
對 svn 命令的配置文件修改即可。進入個人用戶目錄
$ vim .subversion/config
找到包含 [miscellany] 這一行,取消注釋,然後編輯包含 global-ignores 的那一行,取消注釋,並添加需要過濾文件的通配符即可。如下所示:注意開頭不能有空格,否則svn會報錯。
global-ignores = *.so *.a *.o *.lo *.la .*.rej *.rej .*~ *~ .#* .DS_Store
這個配置是對客戶端的修改,對版本庫沒有任何影響。同時,這個配置也是全局的,適用於本機所有 svn 管理的項目。
Windows下 Tortoise SVN 設置
1. Tortoise SVN 上修改版本庫的屬性
在 svn 管理項目目錄下右鍵,也就是你想設置過濾文件列表的目錄,點擊 Tortoise SVN->屬性->新建,下拉列表選擇 svn:ignore,然後在文本框裡面編輯過濾文件列表。如果希望遞歸該屬性,請選擇左下角的復選框"遞歸應用該屬性"即可。如圖所示:
2. Tortoise SVN 客戶端工具的配置
這個配置和 svn 版本庫沒有關系。在任何目錄右鍵單擊,依次點擊 Tortoise SVN->設置->常規設置,全局忽略樣式中添加忽略文件列表即可。如下圖所示:
熟悉了SVN的忽略文件配置後,我在想git中是否也有兩種類型的忽略配置:版本庫中的配置和客戶端配置。git中的.gitignore文件顯然可以是隨版本庫的配置,每個人都可以通過checkout一份都使用相同的配置