我有幾年沒有與SVN合作過。現在我必須。有了SVN,你會得到一個「本地」副本,然後當你擁有正確的東西時,你是否將它們推送給團隊的其他成員?還是承諾所有你有?這意味着你在做某件事情並冒着失去的風險,直到它正確並準備好承諾爲止?SVN是否允許提交和推送?
我討厭SVN,我總是討厭SVN。
我不得不使用SVN有一些方法使它更好嗎?我可以在同一回購協議上同時使用Mercurial或GIT嗎?
我有幾年沒有與SVN合作過。現在我必須。有了SVN,你會得到一個「本地」副本,然後當你擁有正確的東西時,你是否將它們推送給團隊的其他成員?還是承諾所有你有?這意味着你在做某件事情並冒着失去的風險,直到它正確並準備好承諾爲止?SVN是否允許提交和推送?
我討厭SVN,我總是討厭SVN。
我不得不使用SVN有一些方法使它更好嗎?我可以在同一回購協議上同時使用Mercurial或GIT嗎?
我可以在同一個repo上同時使用GIT嗎?
是的,你可以。 Git提供了一種與SVN存儲庫交互的方式 - 請參閱git svn
命令。
簡而言之:
git svn clone <url>
克隆一個顛覆庫
git svn fetch
獲取最新的變化
git svn dcommit
推動你的改變顛覆庫。
git書有關於此主題的一章:http://git-scm.com/book/ch8-1.html#Getting-Started
承諾就是你的全部。它並不壞,我從來沒有看到過本地提交的重點 - 如果你想恢復你正在進行的一些工作,它們只是爲了方便你。我的工作流程往往是:編寫一小段代碼,確保它能正常工作,提交併轉到另一部分。無論如何,所有這些都在一個分支上,所以它不會影響除我的隊友之外的任何人(假設他們工作,他們會想要我的更改)。
致力於一箇中央回購確實有你的工作是安全的優勢。在具有你編碼上飛機:)所有的工作後,你的筆記本電腦被盜不用擔心
有擱置引入爲SVN,可能的下一個版本,這將解決您的需要,而不犯犯的談話。
我的答案可能類似於gbjbaanb的一個,但我會強調分支。
如果你想讓整個團隊立即可用 - 提交到主幹。
如果您想在多個提交中執行任務並且不想發佈中間/不穩定狀態,請創建一個分支,在那裏進行提交,然後將其合併到主幹。製作分支很便宜,在SVN中合併並不像人們通常所說的那樣困難;)