version-control - 如何管理个人项目

标签 version-control project-management

关闭。这个问题是opinion-based .它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.

2年前关闭。




Improve this question




我是一名学生,我总是自己开发项目,主要是使用 Ruby On Rails。

我注意到,如果您不能轻松地挽救已删除的代码并将其从一个版本传递到另一个版本,那么即使是一个简单的项目也可能变得复杂。 Time Machine 备份是不够的。

我想使用版本控制系统,但它们似乎不适用于单用户项目。我错了吗?如果是这样,您使用什么策略和软件来管理您的代码?

最佳答案

在您自己的项目中使用版本控制软件和其他项目软件绝对是个好主意。尽管这些工具允许团队合作,但它们不仅适用于团队合作。除了跟踪项目更改的明显原因之外,最好使用 SCM 工具,以便您熟悉行业正在使用的工具。

Subversion 很普遍,并且是一个不错的选择,因为它已成功取代了较早和较旧的 CVS 工具。它依赖于一个中央存储库,代码在其中存储并可以备份:我将 SVN 用于个人项目和我已备份到 CD 的小型团队项目。如果您的项目是开源的,那么像 sourceforge 这样的网站支持 svn,您可以将其用于托管。

然而,正如其他一些海报所指出的,个人项目可能会从分布式系统中受益更多:自从 git-hub 上线并且移植工作取得成功后,git 越来越受欢迎。 http://git-scm.com/在 future 几年,此类工具很可能会越来越受欢迎,因为它们允许更多的人参与相同的代码。一个中央存储库的想法很轻松,让每个开发人员都能够对不同的设计进行版本跟踪,并且只将他们完成的版本返回给社区。

对所有项目使用 SCM 的好处之一是可以设置单独的服务器来测试代码的版本。对最新版本的代码进行自动化测试(使用持续集成服务器或类似工具)可以提高您正在编写的软件的质量。

一些经验丰富的软件开发人员谈到他们经常进行增量更改检查的节奏。养成进行完整的小更改并检查它们的习惯:是进入团队工作的好习惯。

关于version-control - 如何管理个人项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/950274/

相关文章:

project-management - 我应该允许我的客户打开票证/访问跟踪吗?

project-management - 抽象的良好用途

具有多个用户的本地服务器上的 Git

git - 将本地分支推送到父级的远程跟踪分支

linux - 如何对 git 和 gitolite 钩子(Hook)进行版本控制?

project-management - 用于项目规范的错误跟踪器和 wiki

testing - 谁应该编写任务的变更日志?开发人员还是测试人员?

project-management - 计算项目编程时间

php - 你如何在 Magento 中管理你的扩展版本控制

version-control - 我应该在发布后或每次提交时增加版本吗