diff --git a/migration-to-git/3-working-with-git/git-fts-as-bridge.md b/migration-to-git/3-working-with-git/git-fts-as-bridge.md new file mode 100644 index 0000000..b671d5d --- /dev/null +++ b/migration-to-git/3-working-with-git/git-fts-as-bridge.md @@ -0,0 +1,25 @@ +--- +layout: default +title: Using TFS and Git together +--- + +If you need continue checking-in to TFS along you work with Git, you can use git-tfs as a bridge. + +It supposed that git-tfs supports to check-in in name of another developer, but for some reason (maybe TFS permissions, maybe it is not ready yet, maybe my fault) it didn't work for me, so, in our team we decided that each developer check-in in TFS his changes after merge his pull requests. + +### 1. Prepare environment for developers + +* Clone GitHub repository +* Bootstrap git-tfs + +### 2. Work in a feature + + + +### 3. Create a pull request + + + +### 4. Merge pull request and check-in in TFS + + \ No newline at end of file diff --git a/migration-to-git/3-working-with-git/git-fts-to-github.md b/migration-to-git/3-working-with-git/git-fts-to-github.md new file mode 100644 index 0000000..4f6452d --- /dev/null +++ b/migration-to-git/3-working-with-git/git-fts-to-github.md @@ -0,0 +1,36 @@ +--- +layout: default +title: Clone a TFS repository to GitHub +--- + + +### 1. Clone TFS to a local git repository + +The command [clone](https://github.com/git-tfs/git-tfs/blob/master/doc/commands/clone.md) allows to clone a branch with all _changesets_. + +![git-tfs clone](git-tfs-clone.png) + +The same command allows to [clone all the branches](https://github.com/git-tfs/git-tfs/blob/master/doc/commands/clone.md#clone-all-the-branches-and-merge-changesets)) (but I didn't test it). + +![git-tfs clone with branches](git-tfs-clone-with-branches.png) + +But it used to fail: + +![git-tfs clone with branches broken](git-tfs-clone-with-branches-broken.png) + +If you don't need the complete history, it is possible to get only the last _changeset_ with the command [quick-clone](https://github.com/git-tfs/git-tfs/blob/master/doc/commands/quick-clone.md). + +![git-tfs quick-clone](git-tfs-quick-clone.png) + +### 2. Prepare repository for Git + + + +### 3. Create a new GitHub repository + + + +### 4. Push local cloned commits to GitHub repository + + + diff --git a/migration-to-git/3-working-with-git/git-tfs-clone-with-branches-broken.png b/migration-to-git/3-working-with-git/git-tfs-clone-with-branches-broken.png new file mode 100644 index 0000000..6cdc5db Binary files /dev/null and b/migration-to-git/3-working-with-git/git-tfs-clone-with-branches-broken.png differ diff --git a/migration-to-git/3-working-with-git/git-tfs-clone-with-branches.png b/migration-to-git/3-working-with-git/git-tfs-clone-with-branches.png new file mode 100644 index 0000000..3956fc3 Binary files /dev/null and b/migration-to-git/3-working-with-git/git-tfs-clone-with-branches.png differ diff --git a/migration-to-git/3-working-with-git/git-tfs-clone.png b/migration-to-git/3-working-with-git/git-tfs-clone.png new file mode 100644 index 0000000..74897c8 Binary files /dev/null and b/migration-to-git/3-working-with-git/git-tfs-clone.png differ diff --git a/migration-to-git/3-working-with-git/git-tfs-quick-clone.png b/migration-to-git/3-working-with-git/git-tfs-quick-clone.png new file mode 100644 index 0000000..d801597 Binary files /dev/null and b/migration-to-git/3-working-with-git/git-tfs-quick-clone.png differ diff --git a/migration-to-git/3-working-with-git/index.md b/migration-to-git/3-working-with-git/index.md index bc2f34d..c48685c 100644 --- a/migration-to-git/3-working-with-git/index.md +++ b/migration-to-git/3-working-with-git/index.md @@ -83,6 +83,14 @@ that [Git Extensions]({{ site.github.url }}/migration-to-git/3-working-with-git/ is a good choice to start because it helps you to understand how Git is working internally. +### git-tfs + +It is an useful tool when you have to migrate a TFS repository and also when Git and TFS should co-exist. + +See [git-tfs readme](https://github.com/git-tfs/git-tfs/#readme) for a complete reference. + +* [Clone a TFS repository to GitHub](git-fts-to-github.html) +* [Using TFS and Git together](git-fts-as-bridge.html) ---