Files missing from git-tfs clone

571 views
Skip to first unread message

steinar...@gmail.com

unread,
Jun 22, 2015, 8:27:17 AM6/22/15
to git-t...@googlegroups.com
I'm trying a git clone using the following command: git tfs clone --authors=authors http://tfsserver:8080/tfs/defaultcollection $/somename/Project/ProjectMain project

The clone starts at the changeset C9085.

When I try building the solution in the cloned "project" directory, I get a lot of missing files.  If I browse the TFS server with the "Source Control Explorer" I see that the missing files have a single entry that is in the changeset C9085.

C9085 seems to have been part of a total reorganization of the TFS structure, the comment says "moved and renamed from somename/lev2patch2 to somename/Project/ProjectMain".

Is there some way to make git-tfs start the clone on C1 and track the history of files outside of the cloned path? I would settle for losing the history and having the files appear.

Cloning the entire repository from the top isn't feasible I think. I worry that  I will run out of disk space on the local machine if I try that.

Thanks!


- Steinar

Philippe Miossec

unread,
Jun 22, 2015, 9:41:15 AM6/22/15
to git-t...@googlegroups.com, steinar...@gmail.com
I think that this case is solved in the 'master` developpment branch of git-tfs ( https://github.com/git-tfs/git-tfs/tree/master ).
But you will have to build it yourself: https://github.com/git-tfs/git-tfs/tree/master#get-the-source-code-and-build

There is also a new feature to handle better this case: https://github.com/git-tfs/git-tfs/blob/master/doc/commands/clone.md#clone-from-a-specific-changeset

steinar...@gmail.com

unread,
Jun 23, 2015, 2:40:50 AM6/23/15
to git-t...@googlegroups.com, steinar...@gmail.com
Thanks for the heads up.  I have a git clone of git-tfs locally, but there has been two releases of git-tfs since the last time I tried, so I wanted to try out the  released version first.

As a datapoint I actually did a clone from the top yesterday, and it was smaller than I feared (11.GB), but the size reduction from "git gc --agressive --prune=now" was disappointing (repo reduced to 10.6GB), so I will definitely try the approach outline above.

Thanks again!

steinar...@gmail.com

unread,
Jun 26, 2015, 4:26:11 AM6/26/15
to git-t...@googlegroups.com, steinar...@gmail.com


tirsdag 23. juni 2015 08.40.50 UTC+2 skrev steinar...@gmail.com følgende:

As a datapoint I actually did a clone from the top yesterday, and it was smaller than I feared (11.GB), but the size reduction from "git gc --agressive --prune=now" was disappointing (repo reduced to 10.6GB), so I will definitely try the approach outline above.

As a side note, cloning from the top gives something where individual solutions can be built (because all files are present), but without any branches.  Preserving the branches is important, so that means cloning from the top isn't an option.

What I would like to do, is to clone each solution into a separate git repository, and if it is necessary to combine them either use submodules or subtree merges (in fact I think I would like to do what git-tfs have done: separate checked-in assemblies into a separate submodule, that can be dropped when moving to a pure NuGet setup).
Reply all
Reply to author
Forward
0 new messages