我有一個svn存儲庫,並且正在尋找將自定義屬性添加到文件的可能性。如何在SVN中設置一個自定義屬性(並找回所有已設置的文件)?
後來我想用存儲庫中的給定值來獲取包含給定屬性的所有文件。
例子:
我要定名爲label
具有值123_ABC
文件的屬性。
之後,我想從存儲庫中獲取標記爲「123_ABC」的所有文件。
這是可能以某種方式?
我使用SVN和TortoiseSVN
我有一個svn存儲庫,並且正在尋找將自定義屬性添加到文件的可能性。如何在SVN中設置一個自定義屬性(並找回所有已設置的文件)?
後來我想用存儲庫中的給定值來獲取包含給定屬性的所有文件。
例子:
我要定名爲label
具有值123_ABC
文件的屬性。
之後,我想從存儲庫中獲取標記爲「123_ABC」的所有文件。
這是可能以某種方式?
我使用SVN和TortoiseSVN
svn propget label
(或svn proplist
),並驗證結果你與這個屬性對所有版本搜索所有的文件嗎?是的,這是可能的,但它是緩慢的,並且不容易:
$ svn log --diff $REPO
這將做日誌的差異。當它看到屬性差異時,就會像Subversion在區分文件時一樣打印屬性差異。當然,這將會區分日誌中的所有文件,這些文件非常非常慢,並且會產生大量的輸出。你可以使用grep
或類似的東西來找到版本。
但是,如果你這樣做,你不妨在樓下跑到星巴克咖啡廳邊等咖啡。哎呀,跑到這個好咖啡店的街區,在你等待的時候喝一杯拿鐵咖啡。更好的是,飛到意大利,跑到海邊,在你等待的時候在咖啡館喝一杯拿鐵咖啡。這將需要一段時間。
如果你發現這種做法讓你灰心,那好!
或者,你只是在你當前的工作目錄中搜索特定文件的這個屬性?如果是這樣,事情並不是那麼糟糕:
$ svn plist --depth=infinity --verbose .
這將打印出所有屬性和它們的值的所有文件在您的工作目錄。這需要一段時間,但不會很長。在它完成之前,你很幸運地將它下樓到星巴克。再次,我會管這到less
,然後搜索我正在尋找的屬性。由於您使用的是Windows,請保存此命令生成的輸出,並使用類似Notepad ++的內容來搜索該文件。
'svn proplist'或'svn pl'(**真的簡短**命令),我認爲 –
所有三個工作。我知道我可以做'svn proplist'或'svn plist',但是沒有意識到'svn pl'。每天學點東西。 –
這是第二次,當我看到**變態使用方法**自定義SVN屬性。你們都是怎麼過來的? –