学习SVN-简单的初学者问题

学习SVN-简单的初学者问题,svn,version-control,Svn,Version Control,刚从SVN开始。这是我在阅读了几篇文章、教程和玩了几个小时后提出的一组非常基本的问题。 当我创建回购协议时,它应该持有我所有的项目还是只持有一个项目?奇怪的是,在几个项目上运行import之后,我添加的每个新项目的修订计数都在增加 如果我自己工作,标签和分支是否仍然是必要的和良好的实践 你如何知道什么时候是提交项目的时候?尤其是从头开始写的时候 晚上结束的时候,你总是把工作交给别人吗?还是你把它退房了 您是否始终保留项目的导出副本?如果SVN数据库坏了怎么办?你能从病痛中恢复过来吗?如果是bor

刚从SVN开始。这是我在阅读了几篇文章、教程和玩了几个小时后提出的一组非常基本的问题。

  • 当我创建回购协议时,它应该持有我所有的项目还是只持有一个项目?奇怪的是,在几个项目上运行import之后,我添加的每个新项目的修订计数都在增加

  • 如果我自己工作,标签和分支是否仍然是必要的和良好的实践

  • 你如何知道什么时候是提交项目的时候?尤其是从头开始写的时候

  • 晚上结束的时候,你总是把工作交给别人吗?还是你把它退房了

  • 您是否始终保留项目的导出副本?如果SVN数据库坏了怎么办?你能从病痛中恢复过来吗?如果是bork,我只有一个签出副本,我会自己删除所有的.svn目录吗?这样做是否等于导出副本?是否将导出的标签归档到其他位置

  • 我是否需要直接访问存储库目录?隐藏这个目录会更好吗?(.svn)

  • 是否有一种更简单的方法来执行签出和导入,然后输入整个文件路径(file:///Applications/MAMP/SVN/)? 我可以设置一次回购协议,我将一直使用它吗

  • 编辑感谢您解答所有这些问题。另外,对于gui的建议。我是通过textmate设置的,这真是难以置信的棒。仍然需要在CL上进行初始导入和签出

  • 这取决于你。有些人认为回购对于许多项目来说“足够大”,有些人认为共享编号烦人,并使其成为1:1的映射。由你决定
  • 当然!每次发布时,都要对其进行标记,以便可以轻松地返回到它。每次你想在“孤立”的情况下做一些大的事情,就把它分开
  • 尽可能经常地投入,把它看作是你工作的后盾
  • 我更喜欢在那天或“会议”或其他任何时候停止工作之前做出承诺,这只会让我觉得我已经完成了一些事情,这对激励有好处
  • 我将SVN备份到保存在银行保险库中的硬盘上。:)不像我应该的那样经常或定期,但我正在努力改善这种习惯
  • 我不认为我曾经直接访问过它,在设置之后
  • 我不确定,我使用了一个很短的本地服务器域名(svn.unwind.se)
  • 您可以对每个项目进行回购,也可以对多个链接项目使用单一回购;这完全取决于你。考虑到修订号对于存储库是全局的,因此在项目上提交将增加整个回购的修订计数。
  • 如果你需要分支你的项目,即使你独自工作,它们也是很好的实践。如果您只有主分支,则不需要它们
  • 我们通常在特性完成、重构完成等情况下提交;我们在编辑过程中没有提交。
  • 如果你自己工作,你可以经常承诺备份你的工作。但是,如果您在团队中工作,您应该坚持提交“工作代码”,否则您的同事可能会在他们的工作副本中获得一些非编译代码
  • 我们的回购协议每晚都会与服务器上的其他内容一起备份
  • 用户不需要访问repos目录。备份管理员等应该可以访问它
  • svn有许多不同的GUI。查看此:
  • 当我创建回购协议时,它应该持有我所有的项目还是只持有一个项目?奇怪的是,在几个项目上运行import之后,我添加的每个新项目的修订计数都在增加

    如您所愿:每次签入时,修订计数都会增加,与它所在的项目无关

    如果我自己工作,标签和分支是否仍然是必要的和良好的实践

    标记发布(例如,您可以根据reporter使用的任何发布来验证bug),分支用于处理更大的事情-如果它没有按照您预期的方式工作,您可以始终返回主分支

    你如何知道什么时候是提交项目的时候?尤其是从头开始写的时候

    我从一开始就提交,就在我创建项目之后

    晚上结束的时候,你总是把工作交给别人吗?还是你把它退房了

    我每天晚上都会承诺,如果我有一些有效的东西(或者在任何情况下都不会破坏构建)。不要签入未编译的代码(即使您单独工作,这也是一个好主意)。在开始另一项任务之前,每当我完成我正在做的任何任务时,我都会做出承诺

  • 这是个人品味的问题。我更喜欢单一回购,它更易于维护用户和权限以及备份
  • 是的,这两个功能即使在单人场景中也很有用
  • 每个提交都应该是有意义的。因此,当您完成一个特性的实现,或者当您修复一个bug,或者当您完成一些可以在日志消息中有意义地描述的工作时,请提交。版本控制工具不是备份工具
  • 请参见上一点,您不应该仅仅因为停止工作而在存储库中留下一些损坏的代码或完成了一半的任务而提交
  • 备份始终很重要,svn为您提供了不同的备份方法,请参见官方手册:
  • 通常情况下,设置后不需要访问它
  • 尝试使用Svn客户端,如

  • 以下是我对此的看法:

    当我创建回购协议时,它应该 保留我所有的项目还是只保留一个? 运行import之后 关于我修改的几个项目 每个新项目的数量都在增加 补充说

    这完全取决于你的品味:在一个回购协议中拥有多个项目有好处(例如,将代码从一个项目复制到另一个项目),但是