Team using Visual Studio with TFVC - Individual development practices causing conflicts

Today I was helping another developer with a TFS/TFVC and Visual Studio problem. The team she is on maintain an old PHP app. Someone years ago decided to use Visual Studio, to put the PHP code into TFS. What they did was create a Visual Studio project, then add all of the PHP files. So, they use whatever development IDE they can for doing PHP (most are using Visual Studio Code, but others use something else), then someone checks the code in using the old Visual Studio. It’s a hack, but it works.

Her problem was caused, in part, because she didn’t do a Get Latest. So, her changes conflicted with what was checked into TFS.

I’ve seen this behavior before at work, where the developer treats the project like they’re the only one working on it, even if they’re on a team of 10 developers. I’m wondering if this is something that is more common with users of TFS/TFVC or if some people who work in Git may also behave like they’re the only developer on a team that’s working on the same project?

I don’t think that’s inherent to tfvc as a technology but rather a characteristic of a team that isn’t moving forward, such as still using tfvc. So these days I would say it’s more likely with tfvc for the simple fact that the team using it is probably not that forward thinking/self improvement minded. Those teams when forced to switch to git would have the same flawed mindset while using git as well.

From what I noticed it’s something related to TFVC users; after they moved to Git I didn’t get any “problems”.
But during TFVC period we had problems with the Exclusive checkout option: some manager was a big fun of this option.

There is a “get latest on checkout” option in the tfvc settings.

But the problem exists in git as well, git however is more forceful when it comes to denying you to push back your changes in that case.

I wish we had moved to ADO. That way people could decide which VCS to use (TFVC or Git). I think we’ll have people struggle with Git and as you suggest may not want to move forward.

However, maybe you’ll right. I can hope that they’ll be willing to advance their skills and practices. Time will tell.

When I started at my org in 2018 git and branching strategies were almost voodoo. It took time but I’d say most devs work on git at least some of the time. There are plenty of tfvc only apps left out there but new things are supposed to start in git. A thing that helped adoption was new devs joining the teams or having that one charismatic team member that says hey let’s try something new.