導航:首頁 > 凈水問答 > 怎麼過濾svn的class文件內容

怎麼過濾svn的class文件內容

發布時間:2021-12-07 00:44:52

⑴ visualSVN如何通過hook對提交文件進行過濾

打開控制台,在Repository屬性中,找到hooks,添加 pre-commit 的 hook 處理示例:下面內容,對用戶提交的內容進行檢查,如果提交列表中有 pom.xml ,.project等文件,取消操作,顯示提示信息。如果當前提交者是 admin ,則允許。這是 windows batch 批處理腳本。相關語句說明: 1、@echo off echo off是關閉回顯,不顯示命令內容。舉例:如果你有一個test.bat,內容只有一行:dir,那執行後,輸出的內容可能是:如果你在最前面加上echo off,那輸出的內容可能是: 兩者對比,你可以發現,dir這個命令在下面的示例中不再顯示。 然而,由於加了一條語句 echo off,而這條語句在生效前,還是會回顯的,所以你看到輸出中有 c:\>echo off,是否有辦法讓這條語句也不顯示呢?可以,我們只要在 echo off 前加上 @ 就可以了。那這樣,我們的 test.bat 內容如下:這回執行的結果可能是: 2、setlocal 加上這條命令,避免批處理中對環境的改變影響到系統環境。如PATH 3、for 循環上面這句,要分解一下 for /f %%k in (『command』) do stat /f 是指定循環類型,這是迭代,用得最多的循環。 %%k 是變數,每次取出的值都會保存在裡面。 'command' 用單引號指明要執行的命令,命令處理後,在控制台輸出的內容會被 for 命令一行行取出處理。 stat 要執行的處理,如果有多條,可以用()包含多行命令。再來看一下命令 svnlook author %REPOS% -t %REV% svnlook 是 visual svn 安裝後,在其 bin 目錄下的管理工具,可以查看Repository 的相關信息,如目錄,日誌等。具體可使用 svnlook help 查看幫助。 author 是查看用戶名。 %REPOS% 是hook 傳過來的Repository 路徑,如 C:\myRepository\projectA -t%REV% %REV%是 hook 傳過來的事務ID號,如果不加參數 -t 則可以指定版本號。使用這條命令,我們可以提取出當前提交者的用戶名。 4、if "%user%" == "admin" goto admin 這是條件判斷,如果用戶名是 admin,使用 goto 語句,跳轉到標簽為 :admin 的地方,這在批處理的最後定義了。 5、for /f %%k in ('svnlook changed %REPOS% -t %REV% ^| find /c /i "pom.xml"') do @set /a count=%% k 這條語句與前面的 for 語句差不多,主要是 'command' 不同。 svnlook changed,這里可以列出所有提交的更新文件列表。 find /c /i "pom.xml 這是搜索語句,查找 pom.xml,/c 表示只顯示搜索結果的條數, /i 表示不區分大小寫在這兩條語句的中間,是管道符 |,表示將前者輸出的內容,作為後者處理的輸入內容,也就是將所有提交的文件列表,交給 find 去搜索,並統計有多少個 pom.xml 在管道符的前面,有個轉義符 ^,其作用是將這特殊的字元當前普通字元串,而不是命令。如果沒加這個轉義符,那這個 'command' 就不是一個整體了,以至語法出錯。這里是將其作為字元串,而 for 命令則將這個字元串再作為命令來處理,避免語法嵌套,解析錯誤。(這一點,之前不知道,總是提示語法錯誤,花了我不少時間才找出問題所在。) 5、取消 commit 要取消commit ,只要返回非0的結果代碼即可。如:exit 1 6、echo 請不要提交 "target" >& 2 前面沒問題,是普通的 echo,後面是一個重定向。將輸出的內容發送到錯誤輸出的 stderr。 0 標准輸入 stdin,鍵盤輸入 1 標准信息輸出 stdout,輸出到控制台 2 標准錯誤輸出 stderr,輸出到控制台如果不加 >& 2,那svn客戶端是看不到提示信息的,必須要輸出到 2 另外,如果提示說:Failed to start 'xxx/pre-commit.cmd' hook,可能需要有控制面板,高級,服務里,將 visual svn的用戶改為本地用戶。 [plain] 1. @echo off 2. setlocal 3. set REPOS=%1 4. set REV=%2 5. set path="C:\Program Files\VisualSVN Server\bin\";%path% 6. 7. for /f %%k in ('svnlook author %REPOS% -t %REV%') do set user=%%k 8. if "%user%" == "admin" goto admin 9. 10. for /f %%k in ('svnlook changed %REPOS% -t %REV% ^| find /c /i "pom.xml"') do @set /a count=%%k 11. if NOT %count% == 0 ( 12. echo 請不要提交 "pom.xml" >& 2 13. exit 1 14. ) 15. 16. for /f %%k in ('svnlook changed %REPOS% -t %REV% ^| find /c /i ".project"') do @set /a count=%% k 17. if NOT %count% == 0 ( 18. echo 請不要提交 ".project" >& 2 19. exit 2 20. ) 21. 22. 23. for /f %%k in ('svnlook changed %REPOS% -t %REV% ^| find /c /i ".classpath"') do @set /a count=%% k 24. if NOT %count% == 0 ( 25. echo 請不要提交 ".classpath" >& 2 26. exit 3 27. ) 28. 29. for /f %%k in ('svnlook changed %REPOS% -t %REV% ^| find /c /i "target"') do @set /a count=%%k 30. if NOT %count% == 0 ( 31. echo 請不要提交 "target" >& 2 32. exit 4 33. ) 34. 35. for /f %%k in ('svnlook changed %REPOS% -t %REV% ^| find /c /i ".settings"') do @set /a count=%% k 36. if NOT %count% == 0 ( 37. echo 請不要提交 ".settings" >& 2 38. exit 4 39. ) 40. 41. :admin 42. exit 0 [plain] 1. C:\>test 2. 3. C:\>dir 4. 驅動器 C 中的卷是 WINXP 5. 卷的序列號是 8C4E-88D3 6. 7. C:\ 的目錄 8. 9. 2011-04-28 08:55 Documents and Settings 10. 2011-12-14 09:32 Intel 11. 2012-03-03 10:26 Oracle 12. 2012-03-19 13:22 Program Files 13. 2011-12-14 09:34 2,122 RHDSetup.log 14. 2012-03-24 15:26 6 test.bat 15. 2012-03-09 16:44 WINDOWS 16. 2 個文件 2,128 位元組 17. 5 個目錄 41,156,255,744 可用位元組 [plain] 1. C:\>test 2. 3. C:\>echo off 4. 驅動器 C 中的卷是 WINXP 5. 卷的序列號是 8C4E-88D3 6. 7. C:\ 的目錄 8. 9. 2011-04-28 08:55 Documents and Settings 10. 2011-12-14 09:32 Intel 11. 2012-03-03 10:26 Oracle 12. 2012-03-19 13:22 Program Files 13. 2011-12-14 09:34 2,122 RHDSetup.log 14. 2012-03-24 15:28 17 test.bat 15. 2012-03-09 16:44 WINDOWS 16. 2 個文件 2,139 位元組 17. 5 個目錄 41,156,255,744 可用位元組 [plain] 1. @echo off 2. dir [plain] 1. C:\>test 2. 3. 驅動器 C 中的卷是 WINXP 4. 卷的序列號是 8C4E-88D3 5. 6. C:\ 的目錄 7. 8. 2011-04-28 08:55 Documents and Settings 9. 2011-12-14 09:32 Intel 10. 2012-03-03 10:26 Oracle 11. 2012-03-19 13:22 Program Files 12. 2011-12-14 09:34 2,122 RHDSetup.log 13. 2012-03-24 15:31 18 test.bat 14. 2012-03-09 16:44 WINDOWS 15. 2 個文件 2,140 位元組 16. 5 個目錄 41,156,255,744 可用位元組 [plain] 1. for /f %%k in ('svnlook author %REPOS% -t %REV%') do set user=%%k

⑵ eclipse svn 提交怎麼忽略文件

工具/原料

eclipse

方法/步驟

  1. 點擊windows中最後一項preferences。

⑶ 如何避免吧.svn文件編譯到classes目錄下

SVN是一個很好用的版本管理根據,但有一個很煩人的問題用eclipse編譯Java Web應用時候會把.svn文件也編譯到classes文件夾下,這樣給提交和更新都帶來很大麻煩。如下是解決辦法:

右鍵點擊project
Properties -> Java Build Path -> Source 展開裡面的項目
選中 Excluded,點擊 Edit 按鈕
在 Exclusion patterns 中點擊 Add 按鈕
輸入 **/.svn/**
保存即可

⑷ 上傳svn項目時怎麼屏蔽掉class等生成的文件

方法1、在客戶端設置全局忽略樣式,以TortoiseSVN為例,右鍵菜單TortoiseSVN——設置——常規設置——全局忽略樣式——加入要屏蔽的文件類型,如*.obj,這種方法的好處是簡單,但只能限制本客戶端不能上傳該類文件,不能控制所有人都無法上傳該類文件
方法2、在SVN伺服器端設置pre-commit鉤子,在鉤子里檢查上傳文件名中是否含有該文件類型的關鍵詞,如果含有則上傳失敗。這個好處是一旦設置好了,所有客戶端都無法上傳該文件了。但就是要自己寫個鉤子腳本,稍麻煩些。
關於pre-commit具體怎麼寫,不是幾句話能說清的,網上搜索一下吧,有現成的範例。

⑸ 怎麼解決linux下svn過濾掉了.a等類型文件的問題

設置svn:ignore屬性: 例如: svn propset svn:ignore *.class 過濾掉所有.class文件。

⑹ svn怎麼忽略.classpath

提供兩個思路吧:
1、首先將這個文件上傳,保證伺服器端有這個文件,專然後在ToitorseSVN客戶端設置全局屬忽略樣式,將整個文件名作為忽略條件,這樣在提交時就不會提交這個文件了。這個方法的問題在於如果在別的文件夾下有同名文件需要提交,那麼就會導致那個文件也被忽略。
2、將這個access文件放在另一個svn版本庫中,在該項目的版本庫中通過設置svn:externals屬性來外部引用這個文件,這樣應該也不會提交這個文件。這個方法沒驗證過,只是理論分析,你可以自行驗證。
-----------
補充一下,如果用方法一,就必須通知所有人員在客戶端都設置忽略這個文件。

⑺ eclipse中安裝svn插件,對整個工程比對的時候怎麼可以忽略掉bin文件夾下的class文件

可以通過切換「打開方式」來進行「忽略class」文件比較。
解釋:菜單欄選擇內「windows」,選擇「show view 」,之後選擇打容開方式為「Project Explorer」即可,之後在進行svn比較會自動忽略掉target下的所有編譯文件。
備註:通過「Package Explorer」打開的就有這種問題。

⑻ 如何在myeclipse編譯時過濾掉svn目錄

我都是先用搜索功能把所有的.svn文件夾刪除,再用myeclipse編譯。

⑼ 怎麼設置TortoiseSVN,實現文件夾過濾

方法/步驟
1,在來您使用SVN版本控源制的根目錄,右鍵,選擇TortoiseSVN-->Settings
2,在彈出的對話框中,選擇第一大項(此項是默認選擇的),找到右邊的Subversion-->Global ignore pattern , 在後面加入需要禁止的文件夾,比如 bin ,就加入 *bin
obj 就加入 *obj ,注意,多個之間用單個空格(鍵盤上最長的個按鍵)分開。
3,設置完成之後,新建一個obj.txt , 測試通過,至此,使用 svn 過濾策略成功過濾掉文件夾,同樣 過濾文件一樣的,前提是需要您對正則表達式有一定的了解。

⑽ svn 怎麼設置忽略class文件

在客戶端設置全局忽略樣式,以TortoiseSVN為例,右鍵菜單TortoiseSVN——設置——常規設置——全局忽略樣式——加入要屏蔽的文件類型

閱讀全文

與怎麼過濾svn的class文件內容相關的資料

熱點內容
含醇量蒸餾裝置 瀏覽:368
污水用的超濾膜 瀏覽:727
情人 法國電影類似電影 瀏覽:484
洛陽一體化污水泵 瀏覽:667
油煙凈化器購買合同怎麼寫 瀏覽:334
香港老電影,女的變成蛇 瀏覽:434
香港電影尺度 瀏覽:932
關於日本少女胸電影 瀏覽:85
45t超濾設備pid圖 瀏覽:527
植物凈化污水是什麼價值 瀏覽:273
污水管線wz5是什麼意思 瀏覽:36
四個小孩打架咋啦的電影 瀏覽:54
ro膜連接方式 瀏覽:260
林斯特凈水器哪個牌子好 瀏覽:81
原罪多少分鍾 瀏覽:757
反滲透膜D943H 瀏覽:892
在電影院里啪啪啪 瀏覽:696
關於大雁的電影動畫片 瀏覽:337
惠州超濾膜塑膠配件 瀏覽:223
中國打越南有哪些電影 瀏覽:648