简体   繁体   中英

git-tfs: How is the repository storing files?

We have a large TFS repository which we would like to migrate to git.

We are considering using git-tfs for a while, in order for everything to continue working while we migrate.

We have large (or small, but rapidly changing) binary files scattered throughout the code, which have been checked-in to tfs throughout the history.


My worries about git-tfs I have not been able to find accessible answers for:

  1. What is the source of truth for git-tfs? Is it a git server, a tfs server, or some hybrid, or none of the above?

  2. If it is a git server, how would this affect workflow while knowing binary files exist?

  3. We thought of using lfs , but not sure how this would play with git-tfs.

I would love some light shed on this topic, as it would be quite pointless to migrate only to find out binary files make the new repo not usable.

  1. The Git-TFS tool is a two-way bridge between Team Foundation Version Control and Git, and can be used to perform a migration .

  2. It's not a git sever

  3. There are two totally different things without any relationship.

This tool is similar to git-svn. It fetches TFS commits into a git repository, and lets you push your updates back to TFS. In other words, you are using git repositories locally to source control your codes and after edits you could push back changes to remote TFVC repo. It do the trick to server, just feels like you are using local TFVC workspace as normal.

Git-TFS is also appropriate if you want to attempt a migration with full history, more than the 180 days that the Import tool supports, or if you want to attempt a migration that includes multiple branches and merge relationships.

More details please take a look at this link: https://github.com/git-tfs/git-tfs


Due to the differences in how TFVC and Git store version control history, we recommend that you don't migrate your history. This is the approach that Microsoft took when it migrated Windows and other products from centralized version control to Git.

We generally advise users to do a tip migration and keep their TFVC repository online but read-only to view history.

You could also take a look at our official tutorial about how to-- Import repositories from TFVC to Git

We ended up using git tf , which is a product that is no longer supported.

The upside is, it worked.

Unlike git-tfs which caused all kinds of problems: Binary files were migrated corrupt, not all history was migrated, and other anoying problems we did not want to solve.

We haven't tried lfs yet, but it may be necessary later. At least we got to go through one incremental step for now.

TL;DR: - git-tfs did not work for us. git-tf did.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM