CodeBlog.xyz

TFS 40 intermediate questions

September 8, 2023 | by Meir Achildiev

TFS questions

Below are 40 intermediate-level questions about Team Foundation Server (TFS), complete with answers and examples where appropriate.

1. What is TFS Versioning?

Answer: TFS supports two types of version control: Team Foundation Version Control (TFVC) and Git. TFVC is a centralized version control, while Git is distributed.

2. What is the build agent pool in TFS?

Answer: A build agent pool is a collection of agents that can be used to run builds and releases. The pool helps in distributing load and running multiple tasks concurrently.

3. How is high availability achieved in TFS?

Answer: High availability in TFS can be achieved through features like load balancing, database mirroring, and disaster recovery solutions.

4. How do you set up notifications in TFS?

Answer: Notifications can be set up under the “Notifications” tab in TFS to alert users about build failures, work item changes, and other events.

5. What are pre-commit and post-commit hooks in TFS?

Answer: Pre-commit hooks run custom scripts before code is committed, while post-commit hooks execute scripts after the commit is done. They allow for custom logic like linting or sending notifications.

6. How do you move a Work Item to another Project?

Answer: Moving a work item to another project isn’t straightforward and often requires either manual re-creation or using third-party tools to migrate along with the history.

7. What is “Area Path” and “Iteration Path”?

Answer: “Area Path” is used to categorize work items by team or feature area, while “Iteration Path” is used for sprint planning to schedule work items for specific sprints.

8. How do you implement Continuous Deployment in TFS?

Answer: Continuous Deployment can be implemented by creating a release pipeline that triggers automatically whenever a new build is successful, deploying the application to the target environment.

9. What are TFS Groups?

Answer: TFS Groups are collections of users with similar permissions, making it easier to manage access control.

10. What is a detached build in TFS?

Answer: A detached build refers to a build that is run without association to any build definition, usually for quick testing or one-time build tasks.

11. How do you import/export TFS Build Definitions?

Answer: Build definitions can be imported and exported using the TFS API or third-party tools that support this feature.

12. What are service hooks in TFS?

Answer: Service hooks allow integration with external services by sending notifications or triggering actions on specific events in TFS.

13. How do you manage database changes in TFS?

Answer: Database changes can be managed using SQL Server Data Tools (SSDT) and integrated into the build and deployment pipelines.

14. How can you extend TFS functionality?

Answer: TFS can be extended through custom extensions or by leveraging its REST API to integrate with other tools and services.

15. What are “Feature Flags” in TFS?

Answer: Feature flags allow you to control the availability of features in your application without redeploying the code, enabling incremental rollouts and A/B testing.

16. What are the authentication methods supported by TFS?

Answer: TFS supports various authentication methods like NTLM, Kerberos, and Personal Access Tokens (PATs).

17. How do you handle branching strategies in TFS?

Answer: Popular branching strategies like feature branching, Gitflow, or trunk-based development can be implemented depending on the project needs.

18. What is a Shared Step in TFS?

Answer: A Shared Step is a reusable test case that can be used in multiple test plans.

19. How do you enforce code quality in TFS?

Answer: Code quality can be enforced using features like gated check-ins, static code analysis, and integrating quality gates in build pipelines.

20. How do you handle rollbacks in a release pipeline?

Answer: Rollbacks can be implemented in the release pipeline by specifying rollback tasks or scripts that are triggered if the deployment fails.

21. What are Shelvesets in TFS?

Answer: Shelvesets in TFS allow developers to save their work without committing the changes to the main repository. They are useful for code reviews and temporary storage.

22. What is a Check-in Policy?

Answer: A Check-in Policy enforces rules that must be satisfied before code can be checked in. Examples include requiring code comments, running specific tests, or passing a code analysis.

23. How is Artifact Staging in TFS done?

Answer: Artifacts in TFS are stored in staging directories during a build or release pipeline. They can be published to share between different stages or for archival.

24. What are Environment Variables in TFS?

Answer: Environment variables can be defined in build and release pipelines to parameterize tasks, such as specifying a target environment or configuration.

25. What is YML (YAML) build definition?

Answer: YML-based build definitions allow developers to define CI/CD pipelines as code, making it easier to version control and replicate pipelines.

26. How do you perform Hotfixes in TFS?

Answer: Hotfixes can be implemented through a dedicated hotfix branch or using feature flags to enable/disable specific functionalities without redeploying the application.

27. What is a Cloaked Folder in TFS?

Answer: A cloaked folder is a folder that is ignored during a get operation, useful for excluding large or unnecessary files from being downloaded to your workspace.

28. What are Task Groups in TFS?

Answer: Task Groups allow you to encapsulate a sequence of tasks into a single reusable task, which can then be used across multiple build and release pipelines.

29. What is a Differential Build?

Answer: A differential build compiles only the portions of the code that have been changed, making the build process faster.

30. What is Approval in a Release Pipeline?

Answer: Approvals are manual gates that require designated approvers to sign off before or after a stage in the release pipeline.

31. How do you manage Configuration in TFS?

Answer: Configuration in TFS can be managed through variables, parameter files, or using configuration management tools integrated into the pipeline.

32. How can you use TFS for Agile development?

Answer: TFS offers Agile planning tools like backlogs, boards, and sprints, to manage Agile projects effectively.

33. What is the TFS Object Model?

Answer: The TFS Object Model is an API that allows developers to interact programmatically with TFS services and data.

34. How do you handle sensitive data in TFS?

Answer: Sensitive data like passwords and API keys can be managed using secret variables that are encrypted and not exposed in logs.

35. What are Agent Jobs in TFS?

Answer: Agent jobs are sets of steps that run sequentially in the same agent in a build or release pipeline.

36. What is Telemetry in TFS?

Answer: Telemetry in TFS refers to the collection of usage and diagnostic data, useful for monitoring and analytics.

37. What is Package Management in TFS?

Answer: Package Management allows you to host and share NuGet, npm, and Maven packages within your organization.

38. How do you manage dependencies in TFS?

Answer: Dependencies can be managed using package managers like NuGet or npm, integrated into the build pipeline.

39. How do you perform Database Integration in TFS?

Answer: Database schema and code can be integrated into TFS using SQL Server Data Tools and can be part of the build and deployment pipeline.

40. What are Service Endpoints in TFS?

Answer: Service Endpoints are connections to external systems and services, like databases, repositories, or cloud services, used in build and release pipelines.

RELATED POSTS

View all

view all