After reading manuals and smart books, I decided to migrate some of my local SVN repositories to Git. It would seem to be a simple process, but no… there were some problems.
I’m running DeepStyle 3.1 (which is basically Slackware 12.2). Git 1.6.1.3 was installed with the system.
So I created a directory for the project, ran git-svn and got a “command not found” error. The first problem turned out to be quite simple, you have to use git svn (at least on Slackware), i.e. without the hyphen. Strange, almost all articles refer to git-svn…
OK, I tried to run the correct command and got a scary error message
Can't locate Error.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i486-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/5.8.8/i486-linux-thread-multi /usr/lib/perl5/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i486-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl .) at /usr/lib/perl5/vendor_perl/5.8.8/Git.pm line 93.
BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.8.8/Git.pm line 93.
Compilation failed in require at /usr/bin/git-svn line 45.
BEGIN failed--compilation aborted at /usr/bin/git-svn line 45.
This one took a bit longer. It turned out that I needed to install additional Perl modules and the corresponding bindings for SVN. To install the modules, use the following command (internet access required):
sudo cpan Alien::SVN Error Term::ReadKey
Wait for the installation to finish. Now download subversion-bindings SlackBuild. Extract the archive, change the SVN version in the script to the one you are using and run it. Wait for it to compile and then install the package that was created. Everything should be working now.
The actual repository migration is quite simple (at least in my case). First, we need to match the usernames in SVN and Git, so we create a text file with the following content (of course, the names should be real):
jdoe = Jon Doe
tomm = Tom Morton
Then create a temporary directory for the project, initialise the Git repository, and import the sources from SVN:
The --no-metadata switch in the third command is needed to ignore SVN-specific information. The fourth command creates a mapping between Subversion and Git usernames using a previously created file. The last command performs the import of the source code. The import process will take some time (depending on the size of the repository and the number of commits). Once it has finished, you can clone the temporary repository to get rid of any garbage left behind by SVN.
Based on the report published on the Linfiity Geo Blog and my own impressions.
The 4th QGIS hackfest, held from 11 to 15 November in Wrocław, Poland, attracted 29 participants (28 people and one dog). All participants did their best to make QGIS even better. A lot was accomplished in four days: hundreds of commits, demonstrations of new features, and many productive discussions. The meeting was organised by Paweł Netzel with the help of Milena Nowotarska, Robert Szczepanek, Maciej Sieczka and Borys Jurgiel and took place at the Department of Climatology and Atmospheric Protection of the University of Wroclaw.
My contribution — numerous improvements to the fTools plugin. When using the “Merge shapefiles to one” tool, it is now possible to select not only a folder, but also individual files. The “Simplify geometry” tool has been redesigned: I added a customisable simplification threshold and the ability to simplify the whole layer or only selected features; simplification can be done “in place” or by creating a new shapefile; “in place” simplification supports undo/redo; at the end of the simplification plugin shows a report about the total number of vertices in a layer before and after simplification.
Below, you will find an overview of the most important topics that were discussed during the hackfest as well as most notable changes.
When I was young and handsome, I used to dance. Not professionally, but quite seriously. At least, our team has been given the title of “people’s”, and not so long ago it was confirmed.
I’ve uploaded some photos to Picasa, and below is one of my favourite performances. I apologise in advance for the quality: this is amateur video, and the lighting on the stage is terrible (thanks to the Palace’s sound/lighting director).
The collaborative project to translate the QGIS 1.5 User Guide into Russian is nearing completion. I’m busy with the final editing and formatting.
Recently, I had to look into the OGC CSW (Catalogue Service Web) standard. It’s an interesting and useful thing, but most of the public servers I managed to find implement various aspects of it in a strange way :-(. So I have to add a monstrous construction to the code to catch exceptions and give the user a more or less understandable error message.
I am also slowly writing Pascal wrappers for the GDAL/OGR and Proj libraries. I couldn’t find any Pascal bindings for GDAL/OGR, so I’m making my own. I already have a more or less working module for OGR and some examples of its use. A module for OSR is also ready, but has not been tested yet. Next in line is a module for GDAL.
The situation with the Proj wrapper was a bit more interesting: first, I found a Pascal module for Proj 4.4.3 (the current Proj version is 4.7.0), and this wrapper required changes to the source code of the Proj library. I didn’t like this approach and started to make my own module, partly based on the one I found. Later, when updating the FPC compiler, I accidentally noticed that the available packages included modules for Proj 4.6.1. Now I’m not sure what to do: should I continue developing my own wrapper or not?
I plan to push the results of my work upstream, and if that doesn’t work, I’ll just publish them somewhere.
I returned to Zaporizhzhia yesterday, sunburned and a little refreshed. The heat in Crimea is terrible, and the proximity of the sea does not help. In Choban-Kale, at 11 o’clock in the afternoon, we had 53°C in the direct sun (they say it was almost 60°C in Simeiz), and the water temperature was ~28–29°C. However, it is no better in Zaporizhzhia.
While I was on holiday, the next version of QGIS — 1.5.0 “Tethys” — was released. The official announcement is on the QGIS blog. There are many changes: a lot of bugs have been fixed, new tools have been added, and old tools have been improved (fTools, GdalTools, annotations, new georeferencing module). The documentation is actively updated.
I am leaving for Crimea tomorrow morning at 6 a.m. and will be back late in the afternoon on the 5th.
I will not have internet access there, but you can write to me :-). I promise to answer all emails, comments, bug reports and feature requests when I’m back.
I have been using PeopleNET as my ISP for quite some time. The speed was not very high, and the only plan available was pay-per-gigabyte. But it was more than enough for email, jabber and most websites.
There were simply no other options. Ukrtelecom cited a lack of technical capacity and offered to pay a fee and wait for the capacity to appear (they could not give an estimate of how long this would take). Beeline said they couldn’t provide service to this address, although they had connected the house next door. And there have never been any LANs in our neighbourhood, and if there were, they were very far away and not for a long time.
The Telza ISP didn’t make any excuses or problems, they just pulled the cable through a block and a half. So now I have internet like this
And PeopleNET was left as a backup and travelling option. Their USB modem fits perfectly into the small pocket of a laptop bag.
There has been less work lately, and I have more free time to spend on interesting and useful things.
I have resumed work on GdalTools, but the frequency and number of commits are not as high as before. Mostly small improvements and bugfixes.
From time to time, I fix bugs in my own and other people’s QGIS plugins. I also write articles and notes, not often and not very long, but still. If someone had told me 5-10 years ago that I would be writing articles, I would not have believed them. But here we are.
I’m involved in polishing and improving fTools, which is where my more or less active participation in the life of the QGIS project began: just today I submitted three more patches and picked up a few more bugs to fix.
I plan to get my hands on Ubuntu (and thus Debian) and the process of creating a LiveCD, because I want to participate in the creation of a localised (Ukrainian and Russian) version of Arramagong — LiveCD/DVD for GIS specialists.
And with the possibility that QGIS will eventually migrate from Subversion to Git, it’s a good idea to improve my skills with that version control system.
I didn’t get an Italian visa and won’t be able to attend the QGIS hackfest — bummer!
Participating via IRC is also a bit problematic: I was not allowed to go on vacation, and there is no internet at the office. I’ll try to find an hour or two after work.