Import TFS history from another project to Git












0















I'm trying to migrate a project from TFS to Git using git-tfs, on a project that inherits history from an older, not used anymore, project in TFS. Just to make things clearer: the old project has 5 years of history, then, 1 year ago the new one was created, branching from the old one.



I need to preserve every history and every branch.

Cloning multiple branches from the new project is no problem, however, I'm struggling in reading the full history of the repository.



I.e. the clone command starts reading the commits from the first one made under the new project and ignores all the old ones, coming from the previous project.



During the clone operation, I see multiple errors of commit not found, when a file links to a commit made on the previous project.



In Visual Studio, the history of each file links to the commits made in the previous project. So in Visual Studio I can see 6 years of history, instead of 1.



I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.



How can I pull commits from the two VSTS projects into a single git repo?



Thanks!










share|improve this question



























    0















    I'm trying to migrate a project from TFS to Git using git-tfs, on a project that inherits history from an older, not used anymore, project in TFS. Just to make things clearer: the old project has 5 years of history, then, 1 year ago the new one was created, branching from the old one.



    I need to preserve every history and every branch.

    Cloning multiple branches from the new project is no problem, however, I'm struggling in reading the full history of the repository.



    I.e. the clone command starts reading the commits from the first one made under the new project and ignores all the old ones, coming from the previous project.



    During the clone operation, I see multiple errors of commit not found, when a file links to a commit made on the previous project.



    In Visual Studio, the history of each file links to the commits made in the previous project. So in Visual Studio I can see 6 years of history, instead of 1.



    I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.



    How can I pull commits from the two VSTS projects into a single git repo?



    Thanks!










    share|improve this question

























      0












      0








      0








      I'm trying to migrate a project from TFS to Git using git-tfs, on a project that inherits history from an older, not used anymore, project in TFS. Just to make things clearer: the old project has 5 years of history, then, 1 year ago the new one was created, branching from the old one.



      I need to preserve every history and every branch.

      Cloning multiple branches from the new project is no problem, however, I'm struggling in reading the full history of the repository.



      I.e. the clone command starts reading the commits from the first one made under the new project and ignores all the old ones, coming from the previous project.



      During the clone operation, I see multiple errors of commit not found, when a file links to a commit made on the previous project.



      In Visual Studio, the history of each file links to the commits made in the previous project. So in Visual Studio I can see 6 years of history, instead of 1.



      I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.



      How can I pull commits from the two VSTS projects into a single git repo?



      Thanks!










      share|improve this question














      I'm trying to migrate a project from TFS to Git using git-tfs, on a project that inherits history from an older, not used anymore, project in TFS. Just to make things clearer: the old project has 5 years of history, then, 1 year ago the new one was created, branching from the old one.



      I need to preserve every history and every branch.

      Cloning multiple branches from the new project is no problem, however, I'm struggling in reading the full history of the repository.



      I.e. the clone command starts reading the commits from the first one made under the new project and ignores all the old ones, coming from the previous project.



      During the clone operation, I see multiple errors of commit not found, when a file links to a commit made on the previous project.



      In Visual Studio, the history of each file links to the commits made in the previous project. So in Visual Studio I can see 6 years of history, instead of 1.



      I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.



      How can I pull commits from the two VSTS projects into a single git repo?



      Thanks!







      git tfs git-tfs






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 26 '18 at 11:12









      A. ChiesaA. Chiesa

      3,34111231




      3,34111231
























          1 Answer
          1






          active

          oldest

          votes


















          1















          I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.




          If you could use git-tfs to clone the 2 histories in 2 different git repos, you could once you have the 2 repositories:




          1. In one of the repository, add a remote toward the other one

          2. git fetch --all

          3. Use git replace to link the 2 histories: https://git-scm.com/docs/git-replace#git-replace---graftltcommitgtltparentgt82308203






          share|improve this answer
























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53479888%2fimport-tfs-history-from-another-project-to-git%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            1















            I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.




            If you could use git-tfs to clone the 2 histories in 2 different git repos, you could once you have the 2 repositories:




            1. In one of the repository, add a remote toward the other one

            2. git fetch --all

            3. Use git replace to link the 2 histories: https://git-scm.com/docs/git-replace#git-replace---graftltcommitgtltparentgt82308203






            share|improve this answer




























              1















              I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.




              If you could use git-tfs to clone the 2 histories in 2 different git repos, you could once you have the 2 repositories:




              1. In one of the repository, add a remote toward the other one

              2. git fetch --all

              3. Use git replace to link the 2 histories: https://git-scm.com/docs/git-replace#git-replace---graftltcommitgtltparentgt82308203






              share|improve this answer


























                1












                1








                1








                I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.




                If you could use git-tfs to clone the 2 histories in 2 different git repos, you could once you have the 2 repositories:




                1. In one of the repository, add a remote toward the other one

                2. git fetch --all

                3. Use git replace to link the 2 histories: https://git-scm.com/docs/git-replace#git-replace---graftltcommitgtltparentgt82308203






                share|improve this answer














                I can clone the old project separately without issue (cloning the previous 5 years of history), but I would like to have the two histories merged, so I can see the whole history of edits when I check the history of each file in Git.




                If you could use git-tfs to clone the 2 histories in 2 different git repos, you could once you have the 2 repositories:




                1. In one of the repository, add a remote toward the other one

                2. git fetch --all

                3. Use git replace to link the 2 histories: https://git-scm.com/docs/git-replace#git-replace---graftltcommitgtltparentgt82308203







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 26 '18 at 14:42









                PhilippePhilippe

                12.8k42745




                12.8k42745
































                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53479888%2fimport-tfs-history-from-another-project-to-git%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Ottavio Pratesi

                    Tricia Helfer

                    15 giugno