Problems when migrating a repository from SVN to GITLAB
I have a very large repository in SVN with the following structure:
http://mycompany.com/svn/something/
│
│
│
└───branches
│ │
│ └───MyProject_FIX
│ │ │
│ │ └(SOURCE CODE)
│ │
│ └───MyProject_Branch2
│ │ │
│ │ └(SOURCE CODE)
│ │
│ │
│ │
│ └───OtherProject_FIX
│ │
│ └(SOURCE CODE)
│
│
│
└───tags
│ │
│ └───MyProject
│ │ │
│ │ └1.0.0
| | | └(SOURCE CODE)
│ │ │
| │ └1.0.1
| │ | └(SOURCE CODE)
│ │ │
| │ └1.0.3
| │ | └(SOURCE CODE)
│ │ │
| │ (...)
│ │ │
│ │ └latest
│ │
│ └───OtherProject
│
└───trunk
|
└───MyProject
| |
| └─(SOURCE CODE)
|
└───OtherProject
|
└─(SOURCE CODE)
I have tried almost everything:
- git svn clone
- This script: https://github.com/JohnAlbin/git-svn-migrate
- The import option in github
- This tutorial from bitbucket: https://es.atlassian.com/git/tutorials/migrating-overview
- This tool: https://github.com/nirvdrum/svn2git
And the only think that I have achieved is to import the same structure of the SVN repository with the commits.
What I would like to do is to convert the tag folder intro real git tags, the branch folder intro real branches and import only MyProject (Ignoring the OtherProject)
Finally I have to say that the repository is quite large (I don't know if this detail is important)
Is there any straightforward way to convert this repository?
Thank you in advance!
git svn gitlab git-svn
add a comment |
I have a very large repository in SVN with the following structure:
http://mycompany.com/svn/something/
│
│
│
└───branches
│ │
│ └───MyProject_FIX
│ │ │
│ │ └(SOURCE CODE)
│ │
│ └───MyProject_Branch2
│ │ │
│ │ └(SOURCE CODE)
│ │
│ │
│ │
│ └───OtherProject_FIX
│ │
│ └(SOURCE CODE)
│
│
│
└───tags
│ │
│ └───MyProject
│ │ │
│ │ └1.0.0
| | | └(SOURCE CODE)
│ │ │
| │ └1.0.1
| │ | └(SOURCE CODE)
│ │ │
| │ └1.0.3
| │ | └(SOURCE CODE)
│ │ │
| │ (...)
│ │ │
│ │ └latest
│ │
│ └───OtherProject
│
└───trunk
|
└───MyProject
| |
| └─(SOURCE CODE)
|
└───OtherProject
|
└─(SOURCE CODE)
I have tried almost everything:
- git svn clone
- This script: https://github.com/JohnAlbin/git-svn-migrate
- The import option in github
- This tutorial from bitbucket: https://es.atlassian.com/git/tutorials/migrating-overview
- This tool: https://github.com/nirvdrum/svn2git
And the only think that I have achieved is to import the same structure of the SVN repository with the commits.
What I would like to do is to convert the tag folder intro real git tags, the branch folder intro real branches and import only MyProject (Ignoring the OtherProject)
Finally I have to say that the repository is quite large (I don't know if this detail is important)
Is there any straightforward way to convert this repository?
Thank you in advance!
git svn gitlab git-svn
It should be doable with plain old git-svn provided that you set up branches correctly. You can set them up one by one (if you are not talking about dozens of tags) usingfetch
lines (one for each branch) inside the .git/config file in the section for the svn repo. Tags? I don't have much experience there so won't give you any advice there (though I assume it should be possible to do it).
– eftshift0
Nov 15 '18 at 17:37
add a comment |
I have a very large repository in SVN with the following structure:
http://mycompany.com/svn/something/
│
│
│
└───branches
│ │
│ └───MyProject_FIX
│ │ │
│ │ └(SOURCE CODE)
│ │
│ └───MyProject_Branch2
│ │ │
│ │ └(SOURCE CODE)
│ │
│ │
│ │
│ └───OtherProject_FIX
│ │
│ └(SOURCE CODE)
│
│
│
└───tags
│ │
│ └───MyProject
│ │ │
│ │ └1.0.0
| | | └(SOURCE CODE)
│ │ │
| │ └1.0.1
| │ | └(SOURCE CODE)
│ │ │
| │ └1.0.3
| │ | └(SOURCE CODE)
│ │ │
| │ (...)
│ │ │
│ │ └latest
│ │
│ └───OtherProject
│
└───trunk
|
└───MyProject
| |
| └─(SOURCE CODE)
|
└───OtherProject
|
└─(SOURCE CODE)
I have tried almost everything:
- git svn clone
- This script: https://github.com/JohnAlbin/git-svn-migrate
- The import option in github
- This tutorial from bitbucket: https://es.atlassian.com/git/tutorials/migrating-overview
- This tool: https://github.com/nirvdrum/svn2git
And the only think that I have achieved is to import the same structure of the SVN repository with the commits.
What I would like to do is to convert the tag folder intro real git tags, the branch folder intro real branches and import only MyProject (Ignoring the OtherProject)
Finally I have to say that the repository is quite large (I don't know if this detail is important)
Is there any straightforward way to convert this repository?
Thank you in advance!
git svn gitlab git-svn
I have a very large repository in SVN with the following structure:
http://mycompany.com/svn/something/
│
│
│
└───branches
│ │
│ └───MyProject_FIX
│ │ │
│ │ └(SOURCE CODE)
│ │
│ └───MyProject_Branch2
│ │ │
│ │ └(SOURCE CODE)
│ │
│ │
│ │
│ └───OtherProject_FIX
│ │
│ └(SOURCE CODE)
│
│
│
└───tags
│ │
│ └───MyProject
│ │ │
│ │ └1.0.0
| | | └(SOURCE CODE)
│ │ │
| │ └1.0.1
| │ | └(SOURCE CODE)
│ │ │
| │ └1.0.3
| │ | └(SOURCE CODE)
│ │ │
| │ (...)
│ │ │
│ │ └latest
│ │
│ └───OtherProject
│
└───trunk
|
└───MyProject
| |
| └─(SOURCE CODE)
|
└───OtherProject
|
└─(SOURCE CODE)
I have tried almost everything:
- git svn clone
- This script: https://github.com/JohnAlbin/git-svn-migrate
- The import option in github
- This tutorial from bitbucket: https://es.atlassian.com/git/tutorials/migrating-overview
- This tool: https://github.com/nirvdrum/svn2git
And the only think that I have achieved is to import the same structure of the SVN repository with the commits.
What I would like to do is to convert the tag folder intro real git tags, the branch folder intro real branches and import only MyProject (Ignoring the OtherProject)
Finally I have to say that the repository is quite large (I don't know if this detail is important)
Is there any straightforward way to convert this repository?
Thank you in advance!
git svn gitlab git-svn
git svn gitlab git-svn
asked Nov 15 '18 at 16:27
david.t_92david.t_92
888
888
It should be doable with plain old git-svn provided that you set up branches correctly. You can set them up one by one (if you are not talking about dozens of tags) usingfetch
lines (one for each branch) inside the .git/config file in the section for the svn repo. Tags? I don't have much experience there so won't give you any advice there (though I assume it should be possible to do it).
– eftshift0
Nov 15 '18 at 17:37
add a comment |
It should be doable with plain old git-svn provided that you set up branches correctly. You can set them up one by one (if you are not talking about dozens of tags) usingfetch
lines (one for each branch) inside the .git/config file in the section for the svn repo. Tags? I don't have much experience there so won't give you any advice there (though I assume it should be possible to do it).
– eftshift0
Nov 15 '18 at 17:37
It should be doable with plain old git-svn provided that you set up branches correctly. You can set them up one by one (if you are not talking about dozens of tags) using
fetch
lines (one for each branch) inside the .git/config file in the section for the svn repo. Tags? I don't have much experience there so won't give you any advice there (though I assume it should be possible to do it).– eftshift0
Nov 15 '18 at 17:37
It should be doable with plain old git-svn provided that you set up branches correctly. You can set them up one by one (if you are not talking about dozens of tags) using
fetch
lines (one for each branch) inside the .git/config file in the section for the svn repo. Tags? I don't have much experience there so won't give you any advice there (though I assume it should be possible to do it).– eftshift0
Nov 15 '18 at 17:37
add a comment |
1 Answer
1
active
oldest
votes
Sounds like you need to use the trunk/branches/tags command line options for git svn:
git svn clone --trunk=/trunk/MyProject --branches=/branches/MyProject_Branch2 --branches=/branches/MyProject_FIX --tags=/tags/MyProject http://mycompany.com/svn/something/ <dest repo>
This should pull out just MyProject.
Remember to include your authors file and put in --prefix==
to ensure that the atlassian clean up script that converts svn tags to real tags works properly.
add a comment |
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
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53323863%2fproblems-when-migrating-a-repository-from-svn-to-gitlab%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
Sounds like you need to use the trunk/branches/tags command line options for git svn:
git svn clone --trunk=/trunk/MyProject --branches=/branches/MyProject_Branch2 --branches=/branches/MyProject_FIX --tags=/tags/MyProject http://mycompany.com/svn/something/ <dest repo>
This should pull out just MyProject.
Remember to include your authors file and put in --prefix==
to ensure that the atlassian clean up script that converts svn tags to real tags works properly.
add a comment |
Sounds like you need to use the trunk/branches/tags command line options for git svn:
git svn clone --trunk=/trunk/MyProject --branches=/branches/MyProject_Branch2 --branches=/branches/MyProject_FIX --tags=/tags/MyProject http://mycompany.com/svn/something/ <dest repo>
This should pull out just MyProject.
Remember to include your authors file and put in --prefix==
to ensure that the atlassian clean up script that converts svn tags to real tags works properly.
add a comment |
Sounds like you need to use the trunk/branches/tags command line options for git svn:
git svn clone --trunk=/trunk/MyProject --branches=/branches/MyProject_Branch2 --branches=/branches/MyProject_FIX --tags=/tags/MyProject http://mycompany.com/svn/something/ <dest repo>
This should pull out just MyProject.
Remember to include your authors file and put in --prefix==
to ensure that the atlassian clean up script that converts svn tags to real tags works properly.
Sounds like you need to use the trunk/branches/tags command line options for git svn:
git svn clone --trunk=/trunk/MyProject --branches=/branches/MyProject_Branch2 --branches=/branches/MyProject_FIX --tags=/tags/MyProject http://mycompany.com/svn/something/ <dest repo>
This should pull out just MyProject.
Remember to include your authors file and put in --prefix==
to ensure that the atlassian clean up script that converts svn tags to real tags works properly.
answered Nov 20 '18 at 9:10
Paul PhillipsPaul Phillips
416
416
add a comment |
add a comment |
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53323863%2fproblems-when-migrating-a-repository-from-svn-to-gitlab%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
It should be doable with plain old git-svn provided that you set up branches correctly. You can set them up one by one (if you are not talking about dozens of tags) using
fetch
lines (one for each branch) inside the .git/config file in the section for the svn repo. Tags? I don't have much experience there so won't give you any advice there (though I assume it should be possible to do it).– eftshift0
Nov 15 '18 at 17:37