Book Image

Git Essentials

By : Ferdinando Santacroce
Book Image

Git Essentials

By: Ferdinando Santacroce

Overview of this book

Table of Contents (17 chapters)

Using Git with a Subversion repository


Using Git as a client of Subversion can raise some confusion due to the flexibility of Git as compared to the more rigid way Subversion organizes files. To be sure to maintain a Subversion-friendly way of work, I recommend that you follow some simple rules.

First of all, be sure your Git master branch is related to the trunk branch in Subversion; as we already said, Subversion users usually organize a repository in this way:

  • a /trunk folder, which is the main folder

  • a /branches root folder, where you put all the branches, each one located in a separate subfolder (for example, /branches/feat-branch)

  • a /tags root folder, where you collect all the tags you made (for example, /tags/v1.0.0)

To adhere to this layout, you can use the --stdlayout option when you're cloning a Subversion repository:

$ git svn clone <url> --stdlayout

In this manner, Git will hook the /trunk Subversion branch to the Git master branch, replicating all the /branches and /tags branches...