Have a clean history with git-rebase


When working on a project you may want to have a clean history, this makes identifying problems —which there will be— a little easier at some point in the future.

A possible functional definition of “clean history” in the context a software project could sound somewhat like:

Each unit of change in the public project history brings the system in a working state.


Migrate from gitweb to cgit with URL rewrite rules

Harald started migrating the gitweb installation on over to cgit, because gitweb was eating up too much resources when stressed by web crawlers; there were still some details to take care of and I put some time into that.


On git clone failing and tweaking object repack

I had been experiencing errors when cloning the OpenEZX kernel with git and I was finally able to solve the issue on the server, I am putting some notes here to save some time to someone else.


List header files first in a patch with git

When submitting a patch for review we want our readers/reviewers to be able to read it as easily as possible, and when you make changes to code involving some definitions in a header file you definitely want header files to be listed first in the patch, so that the reader can follow the changes to the code logic knowing already the new definitions.

Changing the order of files in a patch can be done very easily using the -Oorderfile option offered by some git commands.


Neat compile/run cycle with git and OpenEmbedded

No matter how much careful we are when writing code, whatever changes we are making to a piece of software we must test them before production, even Donald Knuth once said: Beware of bugs in the above code; I have only proved it correct, not tried it. :).

Moreover, if the software we are working on is targeting an embedded system and needs cross-compilation and depends on other software, then testing can be more tedious: we have to prepare patches/archives and instruct the target SDK to pick our latest code, or we could code directly in the SDK working tree, but that would not be very clean. If you use git and OpenEmbedded there is a very neat way to build directly from our own working directory on the filesystem.


Branding patches with git and vim

In linux kernel development there are informal, and yet quite solid, conventions which apply when sharing patches and collaborating during the —public and undisclosed— phase of code peer-review.

As some of you may know, all the communications about kernel development happen via e-mail, and there are some tools to ease the task of preparing and sending patches; these tools allow some degree of customization, or “branding” like I am calling it in this case.

ao2 X-Face


git-commit with date in the past

When setting up the git repository for VRM I wanted to preserve the project development history, but I hadn't used any real VCS tool back then, I just used to make timed backups with a scheme like this:

$ ls -1

[-] backstage: parts three and four, wiki and GIT server.

The third and fourth parts of the backstage about are on the wiki.


git server up


A git server is now up at

Still not much to see there, but this is gonna change soon.