The sed(1) stream editor is one of the most powerful tools from the classic Unix tool box. It is a close cousin to the ed(1) command line editor and a descendant of the ex(1) editor, the command line mode of vi(1). In this article I'll show …
read moreOther articles
Undoing Things With Git
Mutt: too many errors
Hudson vs. Jenkins Revisited
When the Hudson/Jenkins fork was announced earlier this year, the case seemed pretty clear. There were heroes from the Open Source community, among them Hudson's original author, and there was everybody's favorite villain, Oracle. Back in February, I would have chosen Jenkins without a second thought. Now, almost a …
read moreGoogle Code: Migrating to Mercurial
Although one could have guessed otherwise, I've always been a happy Subversion user. Which former CVS user hasn't? But now I'm ready to take the next step. For some of my personal stuff I've been using Mercurial for more than a year, so I thought it was time to take …
read moreSubversion 1.5 Merging Massacres
Recently, I had the opportunity to work with Subversion 1.5 on a medium sized project. Since there were more than 20 developers working on the project with some of them in a different country, there was no other way than to use feature branches extensively. We thought Subversion's merge …
read moreSubversion: Externals Definitions
Externals definitions are a little known but very useful feature of subversion. Using an externals definition, you can create links to different parts of the repository (or even other repositories). Subversion clients then automatically check out the linked content into your working copy.
How this works is best explained with …
read moreUnderstanding the find(1) Utility
The Unix find(1) utility is a powerful tool, yet few people really understand how it works. It may be a bit confusing at first, but a programmer who knows his boolean algebra should be able to wrap his head around the basic concepts without much trouble.
You've probably seen …
read moreReverting a Commit in Subversion
Once in a while, someone commits a revision that has to be rolled back later for some reason. Some teams do that as a matter of policy when people check in broken code that doesn't compile or isn't able to run all test cases successfully. Since Subversion (and similar revision …
read more