在前面第九節,我們已經把本地的工作副本更新為何版本庫的最新版本了,現在我們本地對這些資源所做的任何修改都將“處于SVN的監視之下”。
但是很快我們發現有些資源其實并不需要進行版本控制。例如:Web應用下的WEB-INF/classes目錄,或者日志目錄下的日志文件。但是現在這些文件都被我們加入到版本控制了。要如何取消呢?
忽略已版本控制的資源分為三種情況:
A.針對單個文件的
B.針對多個文件的
C.針對整個目錄的
先來看看如何忽略ECoupon目錄下的my_VPN.txt文件的版本控制。





Step 1: 把文件my_VPN.txt備份到其他位置


Step 2: 把版本庫對應的my_VPN.txt文件刪除



Step 3: 從版本庫更新到本地工作副本


Step 4: 把文件my_VPN.txt拷貝回原有位置


Step 5: 把my_VPN.txt添加到SVN的全局屬性svn:ignore









請注意:在我們沒有添加忽略列表之前,svn status的輸出中第2行前面是一個“?”,這表示SVN不知道該文件的狀態:即它既不屬于版本控制的狀態,也不在忽略列表之中。
使用propset這個命令,設置svn:ignore屬性。my_VPN.txt是要忽略的對象的名字,E:\Temp\ECoupon\是要忽略的資源所在的的位置。
當我們再次執行svn status命令后,發現此時SVN已經不再關注my_VPN.txt文件了。如果此時我們執行以下命令,就會看到my_VPN.txt確實已經被加入忽略列表了


那是不是到這里就算大功告成了呢?不!還記得我們剛剛執行過的svn propset命令嗎?它已經改變了本地工作拷貝的屬性,對于SVN來說不管是資源內容發生改變,還是資源的屬性發生改變,都需要報知SVN,所以我們還得再執行一次commit命令。
Step 6: 提交屬性變更







最后還是提醒一句“不管你對本地工作副本做了什么變更,是內容用好,是屬性也好。如果要讓改變真正有效必須記得提交”
-------------------------------------------------------------
生活就像打牌,不是要抓一手好牌,而是要盡力打好一手爛牌。