I have SourceSafe databases where I have labeled various revisions. How do I port those labels over as tags when converting SourceSafe to Sourcetree/git?
Welcome to the Atlassian Community.
Tags in Git are different then labels that you are used to in SourceSafe. A tag in Git is associated with a commit, so it is applied to the repository as a whole, not like in SourceSafe where you can attach the label to just specific files. So it depends on how you are using labels in SourceSafe. When I did a migration from ClearCase to Git we looked into migrating multiple versions, but decided against it, and one of the reasons were the way we applied labels, and because Git does not version control directories.
If you apply a label in SourceSafe to the whole repository it would be a simple copy/paste into Git, if you are using multiple labels in SourceTree for a particular to represent a version, you would need to combine those into one in Git.
I did a quick search and found this blog post that talks about migrating from SourceSafe to Git
I read the blog post on SourceSafe to Git but I didn't understand much of the blog as the newness and unfamiliarity of the terminology stifled me.
I have used SourceSafe for many years, using it for archiving all sorts of files including circuit board designs and FPGA source files. In building FPGA code over the years, I have applied labels for different released (and unreleased) versions so I can go back to see what changed between different versions. I can also retrieve the sources which built specific versions and mix and match files from different versions if necessary.
I don't understand your examples of using labels so I can't tell which applies to me. I'm looking for the tool which converts from SourceSafe to Git to also bring along the labels automatically because I have hundreds of labels.
Thanks for any help in understanding.
So the blog mentioned a tool that will bring your SourceSafe repository over to Git, VSS2Git, but from what I could gather from the documentation it is not clear if it can bring over your labels, which would make sense since tags in Git is totally different from labels in SourceSafe.
Hopefully this will make it clearer of what I meant regarding the differences between labels in SourceSafe and tags in Git.
Lets say you have the following structure in SourceSafe:
In SourceSafe you could apply a label on only test and test1.sh, since it allows you to put down a label on individual directories and files within the repository. In Git that is not possible. A tag in Git can only applied on the repository as a whole. So if you need to label src and test separately you would have to brake them out into their own repositories in Git.
Supported Platforms macOS Windows We recently introduced support for additional hosting services such as GitHub Enterprise, GitLab (Cloud, Community Edition, Enterprise Edition), and...
Connect with like-minded Atlassian users at free events near you!Find an event
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no Community Events near you at the moment.Host an event
You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events