TFS to Git migration audit question

47 views
Skip to first unread message

arul....@gmail.com

unread,
Jan 4, 2019, 9:02:17 AM1/4/19
to git-tfs-dev
Is it possible to carry TFVC latest timestamp during the migration instead of adding additional commit in Git side ?

Philippe Miossec

unread,
Jan 4, 2019, 9:05:57 AM1/4/19
to git-tfs-dev
Can you be clearer?
What do you mean by " instead of adding additional commit in Git side"?

During a migration, changeset date/time is kept and used to create the git commits...

arulveerakumar Gk

unread,
Jan 5, 2019, 8:40:22 AM1/5/19
to git-t...@googlegroups.com
Hi Philippe, After importing to Git, I could see a first commit with latest timestamp. Is it possible to retain TFS timestamp instead of import time?

Audit wants a proof that migration did not alter any code, so we thought of carrying source timestamp. Is there a way?



--
You received this message because you are subscribed to a topic in the Google Groups "git-tfs-dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/git-tfs-dev/T51g2WmyW7c/unsubscribe.
To unsubscribe from this group and all its topics, send an email to git-tfs-dev...@googlegroups.com.
To post to this group, send email to git-t...@googlegroups.com.
Visit this group at https://groups.google.com/group/git-tfs-dev.
For more options, visit https://groups.google.com/d/optout.


--
Arulveerakumar G.K.
Charlotte, NC

Philippe Miossec

unread,
Jan 5, 2019, 12:33:29 PM1/5/19
to git-t...@googlegroups.com

Hi Philippe, After importing to Git, I could see a first commit with latest timestamp

What does contain this first commit? Does it correspond to a TFVC changeset? 

If it is, it should have the same timestamp. 
Sometimes git-tfs add a pure git first commit if you tell him to clone with a gitignore file. 

. Is it possible to retain TFS timestamp instead of import time?

It should, or there is a bug. 


Audit wants a proof that migration did not alter any code, so we thought of carrying source timestamp. Is there a way?

Timestamps means for me nothing as you could create a git commit with any timestamp.

There is the changeset ID that is stored in the last line of a migrated commit that could be better for audit. 

And if you use git-tfs, we can't guarantee that a commit correspond exactly to the migrated changeset. The only reason is that we know some cases that are not well handled by git-tfs. 


But what could be done is to use the 'git tfs verify' that could verify that a changeset has been well migrated. You could do that for the tip of all the migrated branches to verify the source code integrity. If it's OK, you could go with that and see git history as a documentation (you could also keep the TFVC history some times, months or years, in case) 

The only downside is that the verify command is long to run :-(

But we could guarantee you that git-tfs doesn't alter source code (except if there is a bug). 

Another way to verify is to checkout a commit and the corresponding changeset in 2 different folders and use a tool like win merge to compare the 2 folders if you don't trust the verify command. 

But there is no solution to audit all the commits that is not cost prohibiting (like doing a 'git tfs verify' on all the commits).

I hope it will help, but unfortunately git-tfs is not a perfect tool due to the huge complexity of how TFVC store history and how we receive so very few contributons... 

arulveerakumar Gk

unread,
Jan 11, 2019, 2:30:41 PM1/11/19
to git-t...@googlegroups.com
Thanks much Philippe.

We are getting below error for the application folders which had delete or rename work in TFS side, and clone is not bringing the code changes after that change set.
Can we ignore those history from development folders by passing any run time argument?

Are there any list of errors that we need to cautious about?

error: branch not found. Verify that all the folders have been converted to branches (or something else :().

warning: this changeset 124576 is a merge changeset. But git-tfs failed to find and fetch the parent changeset 124575. Parent changeset will be ignored...

--
You received this message because you are subscribed to a topic in the Google Groups "git-tfs-dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/git-tfs-dev/T51g2WmyW7c/unsubscribe.
To unsubscribe from this group and all its topics, send an email to git-tfs-dev...@googlegroups.com.
To post to this group, send email to git-t...@googlegroups.com.
Visit this group at https://groups.google.com/group/git-tfs-dev.
For more options, visit https://groups.google.com/d/optout.

n.nav...@gmail.com

unread,
Jul 11, 2019, 4:30:10 AM7/11/19
to git-tfs-dev
Hello Arul,

Can you please let us know whatr are the steps you used to migrate from TFS to Git.

Thanks
NAveen
Reply all
Reply to author
Forward
0 new messages