Create branch at specific change set, move changests after this point to different branch

Hypothetical scenario:
By mistake, I’ve been working away on my ‘Main’ branch.

What I need to do, is effectively reset my Main branch to a particular changeset – 1001 for example.
Changesets after 1001, I want to move to a new branch – ‘Dev’

  • TFS 2013 Tracking Changeset(commits) with GIT
  • How do I handle a complex set of related projects using TFS 2013 GIT repository and branching?
  • It's possible that Team Foundation Server Version Control support external repo like git
  • Multiple Developers + Single Dynamics CRM Instance + Git - How to overcome challenges?
  • git fetch tags on Visual studio online build agent
  • Should we use Git or TFVC on a TFS 2015
  • Is this possible?

    I come from a git background, so if this were a git repository, I would probably use something like:

    git checkout -b Dev 1001  //create branch at 1001
    git checkout Main  //back on Main
    git reset --hard 1000  //reset main to 1000

  • Branch does not exist
  • Scare of My Life With GIT: I've got no branch!
  • How to deny branching from master
  • committing to the same branch with git
  • git push on branch src refspec does not match any
  • mysterious vanishing branches in git
  • One Solution collect form web for “Create branch at specific change set, move changests after this point to different branch”

    No, this is not possible in the server based source control world.

    I would recommend that you take a copy of your code, and roll back the change.

    Then create a branch and overwrite the changes that you copied. Dirty, but works…

    Solution: Use git

    Git Baby is a git and github fan, let's start git clone.