[fpc-devel] git / less steps of work // Re: [RFC] Modernising the FPC Release Process -- Proposal for Review

Martin Frb lazarus at mfriebe.de
Fri Apr 17 17:37:40 CEST 2026


On 17/04/2026 17:18, Marco van de Voort via fpc-devel wrote:
>
> Op 17-4-2026 om 15:30 schreef Graeme Geldenhuys via fpc-devel:
>>
>>
>> General observation:
>> From an outsider’s perspective, it appears there was a migration from 
>> Subversion to Git without a corresponding shift in workflow. Many 
>> team members seem stuck in a "Subversion mentality" -- the idea that 
>> branches are expensive or merging is difficult -- none of which 
>> applies to Git.
>
> First, keep in mind that nearly everything I do is single commits.
>
> In tortoisesvn:
>
> - mark 6 repositories in explorer and click update.  All repositories 
> will be updated.
>
> In tortoisegit:
>
> -  pull, stash window, rebase, stash pop prompt per repository.
>
> Just with the update you are already a two dozen of clicks in.

This mixes 2 issues (even though they can force each other in some cases).

The ability to update many at once => that is a simple script (batch 
script on windows).
Of course that fails, the moment you have conflicts in the rebase....

But my advice here would be to at least have a script that either
- remote updates all repos
- remote update and then "git.exe merge --ff-only"

The latter means, if you are on a tracking branch, and it can fast 
forward, then it will.
Otherwise you are left were you are now => resolve each rebase... (or 
rebase later, and keep working on your local branch as it is now)

In my batch I have (for each repo)
"C:\Program Files\Git\bin\sh.exe" --login -i -c 'cd B:/lazarus_gitlab ; 
git.exe remote update ; git.exe merge --ff-only'





The 2nd is the need to rebase. (after pull / including when you must 
pull before push)
SVN simple forced that. It allowed you to push, and merged on the server 
=> and you never knew if the result was good or not (well in 99.999% it 
was good, so that flaw didn't matter).
So, if there was a conflict, even with svn you couldn't just  push 
(commit) => you had to pull (update) first and resolve it. So resolving 
isn't entirely new.


Btw, my tortoise will => when push fails => offer me on one click to
- pull and rebase.
I think that got enabled when I changed the config for pull.  (from my 
conf file)

[pull]
     ff = only
     rebase = true

I still have to confirm stashing (their should be autostash, but I 
haven't tried).

But yes, the extra pull is still more clicks than in SVN.



More information about the fpc-devel mailing list