0

I work for a company developing an iOS app with Xamarin. We chose Xamarin because we were already a C#, .NET, & TFS shop and it was easy to integrate TFS with the git-loving Xcode environment using git-tf. But I'm still not sure what workflow is a best practice and has the least headaches. I am especially looking for a workflow that is safe (i.e. I won't accidentally delete all my work with a rebase or what have you).

I've read git-tf's Working With Teams page, but it's not terribly helpful.

  • Should I have a central git repo in addition to TFS?
  • Should I work on a branch or my local master?
  • Should I use --rebase when I pull?
Jason Hartley
  • 2,459
  • 1
  • 31
  • 40

1 Answers1

1
  1. There's usually no need for a central git repository. I've found that most users find that they want to use git-tf locally and be responsible for their own integration into TFS.

  2. I would recommend using master to track TFS. (In fact, git-tf enforces this at the moment.) Work in a feature branch, then merge into your master branch and checkin to TFS. What I do is:

    • Use git-tf to clone a TFS repository
    • Create a feature branch, let's call it feature, from master.
    • Do some work, committing into feature as needed.
    • Merge feature into master, and checkin to TFS. Better: rebase and squash into a single commit.
  3. Probably. Keeping your history linear is a good thing. But if you use the workflow outlined in #2 above, you won't need to.

Edward Thomson
  • 74,857
  • 14
  • 158
  • 187