TFS vs Git
The very first transitioning task I have to make after leaving Microsoft, is to understand Git.
After using TFS for couple years, you really get used to the right clicking check-out / check-in in visual studio, and the fun of merging. Plus the crazy wait time of waiting to connect to team explorer.
Now coming to Evri, I thought all source controls are essentially the same, and I shouldn’t have any problem learning Git.
Well, turns out it is essentially the same. However, there are so many things you can do with Git it dazzles me sometimes of what I should do with all these options.
Back in Microsoft, we used to work off a sprint branch, and we all just contribute into this branch until testing is over, and merge them back into main.
Now we Git, we can actually create individual branches for any feature / fix you are going to make, and let them live individually.
Although it is doable in TFS, the merging and checking them out / in is just simply painful. Switching branches is just not a designed well in TFS.
What cool about Git is that you have total control of what you want to do with your commits/branches.
For example, if you only want to commit some parts of the file in a patch, in Git you can use git add —patch to identify the parts you want to check-in.
Also if you find yourself unsatisfied with how things are commited, or want to totally reorder things, or just merging your branch with another, git rebase is sooo powerful.
After really learning Git I really get to love it. You feel like you’re in control, finally.