You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: book/09-git-and-other-scms/sections/client-tfs.asc
+4-3Lines changed: 4 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,10 +14,11 @@ If you find yourself on a team that's using TFVC but you'd rather use Git as you
14
14
(((git-tf)))(((git-tfs)))
15
15
In fact, there are two: git-tf and git-tfs.
16
16
17
-
Git-tfs (found at http://git-tfs.com[]) is a .NET project, and (as of this writing) it only runs on Windows.
17
+
Git-tfs (found at https://github.com/git-tfs/git-tfs[]) is a .NET project, and (as of this writing) it only runs on Windows.
18
18
To work with Git repositories, it uses the .NET bindings for libgit2, a library-oriented implementation of Git which is highly performant and allows a lot of flexibility with the guts of a Git repository.
19
19
Libgit2 is not a complete implementation of Git, so to cover the difference git-tfs will actually call the command-line Git client for some operations, so there are no artificial limits on what it can do with Git repositories.
20
-
Its support of TFVC features is very mature, since it uses the Visual Studio assemblies for operations with servers (however, this means you need a version of Visual Studio installed that includes access to TFVC; as of this writing, none of the free-of-charge versions of Visual Studio can connect with a TFS server).
20
+
Its support of TFVC features is very mature, since it uses the Visual Studio assemblies for operations with servers.
21
+
This does mean you'll need access to those assemblies, which means you need to install a recent version of Visual Studio (any edition since version 2010, including Express since version 2012), or the Visual Studio SDK.
21
22
22
23
Git-tf (whose home is at https://gittf.codeplex.com[]) is a Java project, and as such runs on any computer with a Java runtime environment.
23
24
It interfaces with Git repositories through JGit (a JVM implementation of Git), which means it has virtually no limitations in terms of Git functions.
@@ -133,7 +134,7 @@ Git-tfs maps the branch you cloned from to `tfs/default`, and others get their o
133
134
134
135
Another thing to notice is the `git-tfs-id:` lines in the commit messages.
135
136
Instead of tags, git-tfs uses these markers to relate TFVC changesets to Git commits.
136
-
This has the implication that your Git commits may have a different SHA-1 hash before and after they has been pushed to TFVC.
137
+
This has the implication that your Git commits will have a different SHA-1 hash before and after they has been pushed to TFVC.
Copy file name to clipboardExpand all lines: book/09-git-and-other-scms/sections/import-tfs.asc
+11-4Lines changed: 11 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
==== TFS
3
3
4
4
(((TFS)))(((Importing, from TFS)))
5
-
If your team is convering their source control from TFVC to Git, you'll want the highest-fidelity conversion you can get.
5
+
If your team is converting their source control from TFVC to Git, you'll want the highest-fidelity conversion you can get.
6
6
This means that, while we covered both git-tfs and git-tf for the interop section, we'll only be covering git-tfs for this part, because git-tfs supports branches, and this is prohibitively difficult using git-tf.
7
7
8
8
[NOTE]
@@ -17,11 +17,18 @@ You can get this information from the `tf` command-line client, like so:
PS> tf history $/myproject -recursive > AUTHORS_TMP
21
21
----
22
22
23
-
This grabs all of the changesets in the history of the project.
24
-
The `cut` command ignores everything except characters 11-20 from each line (you'll have to experiment with the length of the fields to get these numbers right).
23
+
This grabs all of the changesets in the history of the project and put it in the AUTHORS_TMP file that we will process to extract the data of the 'User' column (the 2nd one).
24
+
Open the file and find at which characters start and end the column and replace, in the following command-line, the parameters `11-20` of the `cut` command with the ones found:
0 commit comments