雖然 demo 使用 SVN 也有一段時間了,但是之前有一段時間都還是蠢蠢的自己判斷哪些檔案有更新哪些檔案沒更新,這樣子在更新網站的時候往往都會花費很多時間去作人肉判斷,費時又費力而且經常會有漏檔案而導致正式機上的程式產生不可預期的錯誤,到後來更索性每次都完整的更新網站,這樣子雖然檔案一定不會漏,但是卻又導致需要花費漫長的上傳時間,後來利用了 SVN 的 Compare 後整個更新網站的流程變順了,檔案也不會少!算是一個很好的體驗,如果你也是有使用 SVN 的朋友多學一招會讓你更得心應手阿。
直接就從重點來說,網站一定是整個都會在某資料夾內,所以我們就從這個資料夾開始,對它按滑鼠右鍵選擇「SVN Show log」
跳出大家應該都很熟悉的 Log 畫面
1.選擇最新要更新的版本號
2.選擇最後更新過的版本號(按住 Ctrl 可以選第二個)
3.在有選擇的版本號上按「滑鼠右鍵」
上一個步驟按了「滑鼠右鍵」以後會跳出以下畫面
選擇第一個 「Compare revisions」 來比對修改的部份
改變的檔案都會在這列出來
可以看到兩個綠色框框的部份就是從第41版到第43版改變了下面四個檔案。
如果您按下了標示1的圖示按鈕,就會反過來變成 第43版到第41版的變更(新增的檔案會變成刪除,修改的檔案會改回去)反向的比較通常對於還原版本有很大的幫助。
延續上一個畫面,我們將下面的四個檔案全選(有幾個選幾個)按下「滑鼠右鍵」
選擇 「Export selection to...」 來將檔案匯出
隨便選擇一個資料夾來存放匯出的檔案
再來開啟資料夾觀賞一下
依據標示可以很清楚的看到資料夾等路徑都建立出來了,這樣子要丟上網站時只需要拉過去就好了不用再淒涼的一層一層點開,大幅增加更新的速度阿!所以如果你有在用 SVN 而且你是需要更新檔案的人(當然不限於網站)這個比較修改檔案的功能絕對是你必須學習的,希望以上說明對各位有幫助。
如何利用 TortoiseSVN 更聰明的更新檔案 | demo小鋪
這個是相當重要的功能,可是你的圖,讓我不太好理解,
可以用文字檔,像windiff,diff這類的比對差異,
比較好理解,尤其是多人同改一個檔案時,有時想看別人改動了那幾行,
上回想在git時,任意比較某兩版本,試半天,在svn的介面上,竟然可以自己複選,這圈功能實在太棒了,因為喜歡時光機回到過去的感覺,有時,看一個檔案,過去到現在,一步一步的變更歷程,還蠻感動的。而gui 介面能用顏色示別 差異的地方,更重要了,尤其檔案好幾行的時候,有改過的,只是其中的一,兩行。
喔你誤會了,如果你是要比對單檔不是使用這功能,這功能主要是比對兩個版本間異動的檔案,簡單來說可以快速的匯出「差異檔」執行部屬
Yup! 這才是版本控管裡面,有baseline的味道。
不過牽扯到發佈的話,rollback可能就還得搭配其他的措施。除非要全砍全加(大破大立嗎 ),不然還是得加點巧思,才能做到一包一包package的味道。
我之前是都拿這來做release note,一整個輕鬆寫意啊