2011-05-04 71 views
1

我不太清楚SVN是做什麼的 - 好吧,我的印象是,它對於一羣程序員來說很好,因爲它可以跟蹤幾個程序員之間的代碼更改,但是作爲單個程序員從SVN獲得什麼好處?我能否保留已被覆蓋的舊文件?如果我保存新的更改,它會自動爲我保留舊文件嗎?有點像以前的版本歷史?SVN記錄舊的覆蓋文件?

+0

好吧,我會忘記SVN現在,我已經浪費了10個小時,試圖讓TortoiseSVN工作,但是它的GUI和實現並不直觀,並且指令沒有意義。它一直沒有說它不能做Ra會話。感謝您的答案。我必須有人親自向我展示。 – netrox 2011-05-04 17:05:12

回答

2
will it automatically keep old files for me? 

答:是的,它會,當你將提交新的變化,它會作出新的修訂版提出了新的變化,併爲你去commiting改變版本將得到增加,而如果在時間要回滾到之前的版本可以使用像Tortoisesvn,Smart SVN這樣的Subversion軟件輕鬆完成。

您將會了解代碼中所做的更改,例如像這樣的 ,如果您已經編寫了1.php,並且您的朋友添加了一些代碼,那麼它會顯示對代碼所做的更改。

enter image description here

如果你是新來SVN我建議你從文檔經歷。

+0

當你說,「承諾」是否意味着「保存」?當我點擊「保存」按鈕時,它「提交」,對吧?還是我必須通過額外的步驟來實現它? – netrox 2011-05-04 07:01:48

+0

提交意味着如果您進行了任何更改以使其他人可以看到(簡而言之,您將將更改保存在存儲庫中)。 – 2011-05-04 07:05:17

+0

提交:保存您所做的更改。 更新:獲取其他人所做的更改。 – 2011-05-04 07:05:44

0

是的。它會給你一個選項來保存你的修改與評論,所以一年後,你可以實際檢查爲什麼你做了這個改變(以及最初的改變是什麼)。它可以讓你選擇創建一個你不確定的實驗的分支,並且仍然希望能夠從今天早上返回到這個版本,在那裏你發現了一些可以工作的東西。

我相信任何開發人員(特別是源代碼開發人員)都可以從源代碼管理中受益匪淺。在我看來,無論他們挑選顛覆,混帳還是其他任何東西,都會產生二階效果(即與首先使用源代碼控制無關)。

0

是的,你可以認爲它保留了你承諾的每一個版本(實際上存儲的組織方式不同,但你通常不關心)。

所以你從來沒有更改任何東西,你只是在你提交你的改變時添加新的版本。您可以在任何時間點檢索任何版本,以備將來確定需要的版本(修訂版本號)。

您可能想要閱讀this quite human-friendly tutorial以更好地瞭解源代碼管理的工作原理。

0

版本控制(無論您使用的工具,可以說,它是GIT,SVN,汞等),是一個必須具備的,即使是一個開發人員:

  • 它跟蹤的更改,
  • 它可以顯示你的代碼(DIFF)的變化,
  • 它可以幫助你增加一些結構,你的工作,
  • 它讓你輕鬆進行回滾,
  • ...最後但並非最不重要..這是一個很好的備份。
  • 和更多的東西。在SO

檢查出這個偉大的帖子: https://stackoverflow.com/questions/59561/what-tools-techniques-can-benefit-a-solo-developer

我發現關於單個開發人員的版本控制這裏的另一個很好的文章: http://www.mactech.com/articles/mactech/Vol.14/14.06/VersionControlAndTheDeveloper/