3

我已经多年没有使用 SVN 了。现在我必须这样做。使用 SVN,您是否获得了一个“本地”副本,您可以根据这些副本进行操作,然后当您做对了事情时,您会将它们推送给团队的其他成员吗?还是承诺是你所拥有的?这意味着您在做某事并冒着失去它的风险,直到它正确并准备好提交?

我讨厌 SVN,我记得一直讨厌 SVN。

我必须使用 SVN 有什么方法可以让它变得更好吗?我可以在同一个 repo 上同时使用 Mercurial 或 GIT 吗?

4

3 回答 3

3

我可以在同一个 repo 上同时使用 GIT 吗?

是的你可以。Git 提供了一种与 SVN 存储库交互的方法 - 请参阅git svn命令。

简而言之:

git svn clone <url>克隆一个颠覆存储库

git svn fetch获取最新的更改

git svn dcommit将您的更改推送到 subversion 存储库。

git book 有一章关于这个主题: http: //git-scm.com/book/ch8-1.html#Getting-Started

于 2013-10-03T04:56:20.057 回答
1

我的回答可能类似于 gbjbaanb 的回答,但我会强调分支。

如果您想立即为整个团队提供一些东西 - 提交到主干。

如果您想在多个提交中执行任务并且不想发布中间/不稳定状态,请创建一个分支,在那里进行这些提交,然后将其合并到主干。建立分支很便宜,并且在 SVN 中合并并不像人们通常所说的那样难;)

于 2013-10-02T17:50:18.740 回答
0

提交就是你所拥有的。还不错,我从来没有完全看到本地提交的意义——它们只是为了方便你,以防你想恢复你正在进行的一些工作。我的工作流程往往是:编写一小段代码,确保它有效,提交它并继续进行另一段。无论如何,所有这些都在一个分支上,所以它不会影响除我的队友之外的任何人(他们无论如何都会想要我的更改,假设他们工作)。

提交中央回购确实具有您的工作安全的优势。在您对飞机上的所有工作进行编码后,无需担心笔记本电脑被盗 :)

有人谈论为 SVN 引入搁置,可能是在下一个版本中,这将解决您在不提交的情况下提交的需要。

于 2013-10-02T17:33:36.150 回答