Go Down

Topic: Strategies to use version control system (like Git, SVN, CSV) with Arduino (Read 774 times) previous topic - next topic

mace

Hi, i would like to discuss various strategies of version control you people are using when you are working with Arduino.

Personally, i'm used to using a version control system, nowadays use Git. My development platform is Ubuntu, and i intend to stick with the Arduino IDE. The Arduino IDE creates new subfolders under my ~/sketchbook, and it seems the most sensible idea to initialize a git repository for each of these directories. I don't know if Arduino IDE ever creates more than one file though...

+ =

I also would like to use some program to document the electronics for my Arduino projects. I just installed Fritzing since everyone seems to be using it. And i might be using other files as well, like photos and text. Unfortunately Fritzing uses a binary file format (a zipped XML), and these are a little unconvenient with version control systems.

Coding Badly

Personally, i'm used to using a version control system, nowadays use Git.


Ditto.

Quote
The Arduino IDE creates new subfolders under my ~/sketchbook, and it seems the most sensible idea to initialize a git repository for each of these directories.


For me, that level of granularity is too fine.  I started with the sketchbook folder as one repository.  The TortoiseGIT tools and tagging make it easy to search and mark significant events.  By including the sketchbook libraries folder with the sketches, I get a clean snapshot of each project without having to deal with sub-modules.

Now the folder above the sketchbook folder is the repository.  The area above the sketchbook folder is used for general purpose things like personal notes, links to interesting projects, and datasheets.

It is fairly easy to have individual sketches (like TinyISP) that are "indepdenent" repositories so I can publish on GitHub while still maintaining them in the bigger Arduino repository.

Quote
I don't know if Arduino IDE ever creates more than one file though...


Tabs are placed in separate files.

Quote
I also would like to use some program to document the electronics for my Arduino projects.


Can't help with that.  I'm using POPAP (plain old paper and pen).

Quote
Unfortunately Fritzing uses a binary file format (a zipped XML), and these are a little unconvenient with version control systems.


Only if you need to perform a three-way merge which is usually rare for an individual.

Go Up