10

这可能是一个愚蠢的问题,但如果我是一个孤独的开发人员并且只打算在我的开发笔记本电脑上工作,那么使用错误跟踪软件有多重要?我目前正在争论使用 Subversion 还是 SourceGear Vault 作为我选择的 VCS,SourceGear 有一个集成的错误跟踪器(Fortress),而 Subversion 世界倾向于使用像 Trac 这样的东西。

现在,我打算将我的笔记本电脑用于家庭和工作项目(我自己订阅了 MSDN,并且看到工作太便宜而无法给我买任何东西,我将在我的笔记本电脑上编写他们的软件以使用它;我们在我的合同中明确规定,我拥有我编写的所有代码,就好像我是一名顾问一样,尽管我是一名 FTE),并且在工作中我将设置 Subversion,因为它是免费的并且没有预算(所以我想这意味着我也应该在家里使用 SVN)。软件完成后,错误跟踪器可能有助于在工作中跟踪事物,但是对于个人用途呢?

请记住,我的笔记本电脑仅用于开发,所以我担心如果我把 SVN 放在上面(毕竟要把那个 repo 与工作分开)然后是 Trac 或其他东西,我会转向它变成一个迷你服务器,还是这是一件好事?而且我什至还没有研究过 CI 解决方案,但老实说,如果您只使用一台机器,我看不出 CI 的意义。这可能会在未来发生变化,但目前我所有的工作都将在这台笔记本电脑上完成。

有什么建议么?

4

10 回答 10

6

无论您是否单独工作,VCS 都很重要。

真的,当您意识到自己犯了一个错误并想要回滚到昨天或今天早上的内容时,它应该在那里,或者您可能只是在实施中做出了不同的决定并想要分支所以您可以在不影响您目前所写内容的核心的情况下进行测试。

总而言之,拥有它是一件好事。你最好是安全而不是抱歉。

至于错误跟踪器,这更多是您的个人喜好。我喜欢Redmine,它集成了SVN、git等。其他人更喜欢Trac。但无论哪种方式,它们都可以在您的笔记本电脑上运行,同时占用最少的资源。尤其是当您认为您是唯一使用它们的人时。

我会查看http://bitnami.org/他们提供打包的 Bug Tracker,您只需执行它,它就会在您选择的端口上启动自己的小型服务器,并且您可以在不使用它时停止它。

于 2009-02-10T13:02:18.337 回答
5

除了本地存储库和/或跟踪器/规划器之外,您可能还需要考虑使用在线存储库和/或跟踪器/规划器。这是风险管理的另一个阶段,如果将来有其他人加入您的团队,您只需授予他们访问权限即可扩大规模。

一些选项:

源代码管理(在线):

  • Assembla - 公共资源是免费的,私人存储库是付费的
  • Source Forge - 仅开源
  • Google 代码- 仅开源
  • Git Hub - 公共源是免费的,私人存储库是付费的
  • Bit Bucket - 最多 5 个贡献者的无限私人仓库,如果您邀请朋友,则为 8 个

错误跟踪/项目管理

  • LightHouse - 无限开源,付费私人项目
  • FogBugz - 完整版最多可供两个开发人员免费使用
  • BaseCamp - 仅付费
  • Trac - 未托管(尽管 Assembla 托管它),开源 - Python
  • Bugzilla - 未托管,开源 - Perl
  • Mantis - 非托管,开源 - PHP
于 2009-02-10T21:23:03.843 回答
4

我认为您应该选择FogBugz。它是在线的,对 2 个开发人员免费,它与您的源代码控制集成。我认为错误跟踪在项目管理方面仅次于源代码控制,尤其是对于单个开发人员而言。您需要能够知道何时修复了所有报告的错误,以便您可以预测功能等的发货日期等。

自动化构建过程将减轻您的巨大负担,以便能够按需创建软件(以防删除等)。CI 过程可能有点矫枉过正,但自动构建规则。

如果你担心把它放在你的笔记本电脑上但仍然想自己动手,你可以去slicehost并以每月 20 美元的价格在线获得一个用于 subversion/trac 解决方案的 ubuntu 盒子。我这样做是为了我的一些个人项目......

于 2009-02-10T13:07:09.230 回答
3

Subversion 和 Trac 不会占用您太多的系统资源,尤其是当它们只是坐在那里等待您使用它们时。

我正在做一个小项目,只有 2 个全职开发人员,但我发现我使用我们的错误跟踪软件(在我们的例子中是 Jira,类似于 Bugzilla),甚至只是为了跟踪我自己的错误和问题。比稍后有时间处理错误时尝试记住错误的细节更容易,并且在解决问题后检查问题是一种非常令人满意的感觉。

在你的情况下,我会坚持一些简单的事情,如果你不想花费太多的开发时间来设置一个专用的系统,即使只是 Outlook 中的一个专用的待办事项列表也可能就足够了。重要的是有一种方法可以确定您已经解决了所有报告的错误。

于 2009-02-10T13:02:04.420 回答
2

错误跟踪器的真正价值在于您不会忘记任何需要修复的东西。如果你们只有一个人,这可能更重要,就好像还有更多人一样,因为没有其他人可以提醒你忘记了什么。我记得过去的一个项目,我们有一个简单的打字错误,只有一个应用程序开发人员(我是 db 开发人员),而在 CEO 提出的那天和几个月里,他没有时间去做后来,当 CEO 注意到它还在那里时,他开始弹道了。当你在处理一大堆任务和可能的错误时,很容易忽略一些东西(尤其是你认为微不足道的东西)。那次事件导致我们获得了一个错误跟踪器,并将所有任务都放入其中,而不仅仅是错误,这是我们做过的最好的事情之一。当客户想要新的东西时,可以对他说:“这是我目前的任务清单。与这些东西相比,它有多重要?” 使它物有所值,尤其是当您是唯一的人时。它将帮助您制定时间估算,并为您提供一个记录有关该任务的讨论和决定的地方,因此没有人可以稍后再回来说他们不知道您会这样做。

于 2009-02-10T20:58:38.753 回答
2

虽然不是一个明确的错误跟踪器,但您可以使用tiddlywiki,它是一个独立的 HTML 文件中的很棒的 wiki,这使得它很容易受到版本控制。

我之所以提到这一点,是因为迟早,除了错误列表之外,您还需要做笔记。

希望这可以帮助

于 2009-08-24T20:44:25.573 回答
1

我同意 JPunyon 的观点,即您应该使用Fogbugz进行错误跟踪。我将 if 用于我的个人资料,它很棒。如果您自己一个人,则错误跟踪器不是必需的(尽管很有用),但源代码控制是必不可少的。我现在选择的产品是Perforce,它提供了一个功能齐全的 2 用户副本,您可以下载和使用。它占用的资源非常少,并且在您升级机器时很容易转移。有一点学习曲线,但值得。

于 2009-02-10T20:46:16.537 回答
1

如果您在笔记本电脑上开发,您可能经常离线工作(我愿意)。考虑使用不需要互联网连接即可运行的错误跟踪器。您可以查看Artifacts - 简单、离线工作并具有 Visual Studio 集成。

于 2009-10-03T12:14:49.817 回答
0

提到他有一个msdn订阅。虽然它不是我最喜欢使用的版本控制系统,但 Sourcesafe 非常易于设置和使用,如果他是唯一使用它的人(听起来很像),这也是一个不错的解决方案。

是的,您想使用一些东西来跟踪错误,即使它只是 Excel(或)中的一个简单列表,这样您就可以跟踪哪些问题仍然存在以及哪些问题已修复。我以前在我从事的小项目上做过。

于 2009-02-10T21:35:56.060 回答
0

你应该看看Fossil。它是一个现代分布式(开源)版本控制系统,可在 Windows、Linux 和 Mac 上运行。它还具有集成的 Bug Tracker 和 Wiki。它是由创建SQLite的同一个人 D. Richard Hipp 博士创建的。而且,事实上,它利用 SQLite 作为版本控制系统、错误跟踪器和 Wiki 的底层存储系统。

Fossil 专为满足小型开发团队或个人开发人员的需求而设计,并且做得非常出色。但是,根据具体情况,它也可以很好地用于更大的开发团队(例如,它被用于 SQLite 的开发)。

(我知道这是一个老问题,但大约六个月前我遇到了 Fossil,并且已经成为它的忠实粉丝(来自 CVS -> SVN -> Hg -> Bzr -> Git 在过去 15 年)我自己的工作,以及工作中的团队。)

于 2011-10-04T16:01:07.673 回答