TFSは素晴らしいツールですが、新しい機能は遅いです
あなたはその製品でどんなビジネス上の問題を解決していますか?どのようなメリットが実現しましたか?
TFSを使用して、変更管理、コード品質、コラボレーション、継続統合、ビルドの自動化を追跡します。 TFS 2015の新しいビルドシステムでは、開発者が維持するために苦労したモノリシックな反復不可能なビルドを、明確で簡潔なカスタマイズ可能なビルドステップに変換しました。また、無関係な複数のビルドプロセステンプレートを1つのクリーンなテンプレートに集約し、プロジェクトやチーム全体のプロセスをよりよく表現しました。 TFS 2015は、以前のバージョンのTFSよりもソフトウェア品質を向上させるのに役立っています。
何が嫌いですか?
私はいつもTFSVCの問題に遭遇しており、非常に多くのプロジェクトがあり、チームが完全にgitに変わることを恐れています。 * TFSVC:コミットが失敗し、コードが自動マージされていることをVisual Studioに定期的に告げるので、再度試してみてください(自動マージされたものは表示されません)。* TFSVC:チェンジセットからのバージョン番号の生成(MSBuildコミュニティタスクのTFSClient経由)は、「tfs.exeがコード100で終了しました」というエラーを引き起こしますが、唯一の修正はプロジェクトを連続して構築することです。* TFS Web Access:TFS2015 Update 1 * TFS:コードレビュー、チェンジセット、その他の作業項目を直感的に関連付けていないため、これらを全体として報告するのは非常に苦労しています(TFSはChromeで使用できません) * TFS:プロセステンプレートのカスタマイズは大きな苦労です。たとえば、コラボレーションを追跡するためにユーザーのストーリーとタスクにコードレビュータブを追加しました。これらのアイテムにコードレビューを接続する唯一の方法は、関連するアイテムです。* TFS:vsoプラグインは「そこに行きます」 * TFS:新しいエージェントとそれらの「システム変数」を設定することは十分に文書化されていません。* TFS:一般的に、TFSにはaが必要です。以前の雇用主と同じように、GitHub Enterpriseを使用するよりも多くのオーバーヘッドが発生します。しかし、TFSは、独自のテストツールを組み込んだレポートや、GitHubですぐには得られないたくさんのものを提供します。 * TFSVC:開発の観点からは、TFSVCに私がこれまでにしたことよりやりたいことをgitでやるために多くの時間を費やしています
何が一番好きですか?
TFSはVisual Studioにうまく統合され、Scrum、Agile、CMMIの多くの優れた機能を提供します。 TFSVCではなくgitとの統合により、一流の分散バージョン管理システムを使用して自動的にバックログにフックすることができます。 TFS 2015の新しいビルドは、ビルド戦略を大幅に改善しました。
製品を検討している他の人への推奨事項
GitHubやBitBucketをチェックして、issueトラッカーと分散バージョン管理システム以上のものが本当に必要かどうかを確認してください。確かに、TFSとVisual Studioとの統合により、あなたの仕事を「中断」し、開いているウィンドウ、タブ、ファイル(すべて)をサーバーに残すことができるので、何か他のことをした後でも元に戻すことができます...しかし、それ? Visual Studio OnlineまたはAtlassian Jira / BitBucketを使用して85%の機能性を頭痛の少ないものにすることができます。
続きを開く
TFS is a great tool but new features are slow coming
What business problems are you solving with the product? What benefits have you realized?
We use TFS to track change management, code quality, collaboration, continuation integration and build automation.
With the new build system in TFS 2015, we've converted monolithic unrepeatable builds which developers struggled to maintain into clear and concise customizable build steps. We've also condensed multiple unrelated build process templates into a single much cleaner template which better represents our processes across projects and teams.
TFS 2015 has helped to improve our software quality more than earlier versions of TFS.
What do you dislike?
I am always encountering problems with TFSVC and we have so many projects that the team is afraid to convert to fully to git. Here are some of the issues I've encountered recently:
* TFSVC: Commits through Visual Studio regularly complain that the commit failed and code was auto-merged, so try again (no indication of what was auto-merged)
* TFSVC: Auto-generating version numbers from changesets (via MSBuild Community Tasks TFSClient) often results in a 'tfs.exe exited with code 100' error and the only fix is to build projects serially
* TFS Web Access: Clearing cookies in Chrome after TFS2015 Update 1 results in TFS being unusable for me in Chrome, so I have to use IE (which I hate)
* TFS: TFS doesn't intuitively associate Code Reviews, Changesets, and other Work Items, making it a huge pain to report on these as a whole
* TFS: Customizing process templates is a huge pain. For example, we've added code review tabs to user stories and tasks to track collaboration and the only way to hook up code reviews to these items is as a 'Related' item
* TFS: While vso plugins are 'getting there', it is still a struggle to integrate a lot of the open source community tools we use (karma, protractor, cucumber, etc.)
* TFS: Configuring new agents and their 'system variables' is not well documented
* TFS: In general TFS requires a lot more overhead than using GitHub Enterprise as I did with a previous employer. However, TFS gives you reporting, built-in proprietary testing tools, and a slew of other things you wouldn't get immediately with GitHub.
* TFSVC: From a development perspective, I spend more time getting TFSVC to do what I want it to do than I ever did with git
What do you like best?
TFS integrates well with Visual Studio and offers many great features for Scrum, Agile, and CMMI. Integration with git rather than TFSVC gives you the flexibility to use a top-notch distributed version control system while automatically hooking into your backlog.
The new build stuff in TFS 2015 has improved our build strategy immensely.
Recommendations to others considering the product
Be sure to check out GitHub or BitBucket and determine whether you really need more than an issue tracker and distributed version control system. Sure, TFS and its integration with Visual Studio allow you to "suspend" your work and persists your open windows, tabs, files (everything) to the server so you can get back to it after doing something else... but do you need that? You could go with Visual Studio Online or Atlassian Jira/BitBucket and have maybe 85% of the functionality with less headaches.
続きを開く