[fpc-pascal] How to get fpc and lazarus sources when svn has shut down?

Martin Frb lazarus at mfriebe.de
Thu Aug 12 15:30:51 CEST 2021

On 12/08/2021 15:11, Bo Berglund via fpc-pascal wrote:
> On Wed, 11 Aug 2021 23:13:28 +0200, Martin Frb via fpc-pascal
> <fpc-pascal at lists.freepascal.org> wrote:
>> Well I don't know your script, and I am not sure how exactly you do that
>> in svn....
> It is not done in SVN, instead I visit the (now removed) page
>   https://svn.freepascal.org/svn/lazarus/ (for lazarus)
> or
>   https://svn.freepascal.org/svn/fpc/ (for fpc)
> and look at the tags list to find the most recent release tag.
> I then use that as input to my script.
ok, so you could run
   git ls-remote
in your shell, and look at that.

>> Also I do not know, if this is for a once up setup (so you only wont to
>> download the one revision and nothing else), or if you don't mind.
>> (I have not measured the overhead..>)
> It is for installation on a pristine RaspberryPi (or Ubuntu) machine and the
> script does everything including setting up the folder tree for development and
> adding the desktop shortcuts.
> Of corse now it is unusable because it cannot retrieve the sources... :(
> I want to download the complete source tree for the tagged revision I want to
> install. I do not care if it is with metadata or not, I only ever use the files
> as is and never modify them.

On 12/08/2021 08:12, Christo Crause via fpc-pascal wrote:
> git clone --depth=1 --branch fixes_3_2 --single-branch 
> https://gitlab.com/freepascal.org/fpc/source.git 
> <https://gitlab.com/freepascal.org/fpc/source.git> fpc-fixes_3_2
You need to test, if it works with tags too (my 3 step solution did).

> Of course I do not want to get excessive overhead like the complete history of
> all files for eternity...
> No history at all would be fine.

Only when you update, then you do get history.

with my "fetch" solution

git init .
git fetch --depth=1 
git switch -c my-branch FETCH_HEAD

you can then later do (may download entire 2.2.0, NOT just the diffs / 
if you are lucky it will reuse some of your local existing data / I 
don't know the internals well enough)

git fetch --depth=1 
git switch -c my-NEW-branch FETCH_HEAD
git branch -d my-branch
git reflog expire --expire=now --all
git gc --prune=now --aggressive

And then you should have just the new branch, and all old data gone. But 
you temp have both.
(git switch takes -f to overwrite changed file / there also is a merge 
option instead)

Afaik You only can get rid of the old data, once you switched to the 
new. So for a brief moment you do have both.

Or you delete the entire dir, and start from scratch.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20210812/16df7019/attachment.htm>

More information about the fpc-pascal mailing list