Hi! > I have avoided CVS, and so far successfully avoided SVN, because I see > them as rather old technology. In contrast, Git is an amazingly powerful > and fresh look at the problem. I'd rather start out using Git. But when > Git was proposed to the FPC/Laz projects it was rather soundly brushed > aside. Another reason for me to stay on the sidelines.
Sorry but that sounds like an excuse. I learned both SVN and git usage mostly through this Lazarus project, as a side effect or extra bonus. :-) Lazarus SVN repo is easy to copy and update. It works well for most things. Patches are easy to generate. I have done that. If you want to use git, you can clone Graeme's Lazarus repo from GitHub any time and start to use it. I have done that, too. I even forked his repo in GitHub to make my own public branch, before I got write access to SVN server. If you would finally get write access to SVN server, you still could use git with git-svn link. Yes, I am doing that, too. Works well. So, this revision control system war is nonsense, although workflow and policy would still need changes. The biggest problem still is that good, valid patches get ignored. I notice the core developers try to improve this. There are now new maintainers for different areas with SVN write access. Maintainers for localization, bug tracker issues, even for Delphi converter (me). But still, only the few and busy core devels check patches related to core features like IDE and LCL. Like yesterday I found out QT bindings maintainer has a LCL related patch being ignored for months in bug tracker. He has proved his skills but can't write even to lcl directory. Ridiculous. I had similar experiences with my patches before I got write access myself. And this is because of fear that some non-perfect patch may sneak in if more rights are given. I propose two things to improve the situation. 1. Make a more stable "release branch" out of truck, or improve the "fixes branch" by applying more changes there. Actually fixes branch should be enough if maintained properly. So, a maintainer is needed. Graeme almost promised if he is allowed to use git, and I have told how well git-svn works so it shouldn't be a problem. :-) 2. Make the trunk less stable. That's what many other projects do, utilize the potential of trunk to let other developers and brave "on the edge" users test new code. Now Lazarus trunk is too stable (Doug could well use it if he just knew :). At the same time patches in tracker are ignored because they may not be perfect... uhhh... After letting patches in more easily, they would be checked by those who use trunk version, not by the few core devels (who are busy). It would be de-centralized instead of centralized. Remember what happened to Soviet Union because it was centralized? :-) There could by an assigned "moderator" for all patches, who filters out some obviously poor and stupid patches but lets everything else in. Please remember that most patches are good after all. What is the worst scenario that could happed? If there was a bad patch then it would be reverted using revision control (SVN, yes)! It is not like some evil person presses Delete-key and the whole Lazarus disappears. Summa summarum: two more assignments are needed, "fixes branch" maintainer and a patch moderator maintainer! Regards, Juha
-- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus