The not-quite-so-open part of opensource...
I started using OpenFOAM around 2006 and felt liberated by its openness. Unlike commercial CFD codes where you moan about things and then wait for a new version to see if it gets better, here you can actually do something about it. In my case, this liberty also felt like an obligation to give back. So not long after starting with OpenFOAM, I was posting code on cfd-online.com and sending tar files to Henry Weller (OpenCFD at that time) for incorporation in the OpenFOAM code base. This was naturally all a bit chaotic - no version control and manual code... read more
11 Nov 2020 | copyright, GPL, OpenFOAMMerging OpenFOAM versions in git
A question came up recently on this forum thread about how to merge the separate change histories from different OpenFOAM versions. The simplest solution is to merge with an ours strategy, which I’ll present directly. Of course, you can also question why disconnected git histories exist in the first place and immediately notice that the same type of issues will simply re-occur with future OpenFOAM-1.7.x, OpenFOAM-1.8.x, etc releases. I’ll thus also take the opportunity to explain why I think the current OpenFOAM development model is perhaps not as bad at it might first appear and might indeed be the only... read more
24 Nov 2009 | OpenFOAM, gitOpenFOAM bits: the #includeIfPresent dictionary directive
As mentioned in the ReleaseNotes-1.6, the new #includeIfPresent directive is similar to the #include directive, but does not generate an error if the file does not exist. Initially, this may not sound particularly useful. Perhaps you haven’t really found very many uses for the normal #include directive anyway, so why would you ever want it to fail silently if the file doesn’t exist? This functionality turns out, however, to actually be quite useful. Before examining this, we should first be aware of the OpenFOAM string expansion that is implicit in the #include and in the #includeIfPresent directives. OpenFOAM String Expansion... read more
17 Nov 2009 | OpenFOAMGetting started with OpenFOAM and git
I have the general impression from the forum that many OpenFOAM users may not always understand how they should (or could) be using git effectively when they are working with OpenFOAM. After an initial git clone to set things up, the simplest method would be to simply use a periodic git pull to update things. However, this has a few distinct disadvantages: you have to recompile things immediately after the pull it makes it somewhat difficult to deal with any local changes These disadvantages may not seem severe, but with a few minor changes to your workflow it is easy... read more
12 Nov 2009 | OpenFOAM, gitKeeping GridEngine configuration information in git
If indeed “imitation is the highest form of flattery”, then Edward Dale should indeed be flattered since I’ve taken his idea about Keeping Grid Engine configuration information in Subversion that I noticed thanks to Chris’ blog entry and simply used git for the backend storage. After seeing the simplicity of the solution and its usefulness, it looked to be a must have, except that I generally use git for almost everything and adding subversion to the mix would be annoying. The crux point thus seemed to be replacing svn_load_dirs.pl (to import and update everything) with an equivalent git-load-dirs. Unfortunately, git-load-dirs... read more
05 Nov 2009 | gridengine, git