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

Kevin Lyda kevin at lyda.ie
Fri Aug 13 10:58:46 CEST 2021


On Wed, Aug 11, 2021 at 10:56 PM Bo Berglund via fpc-pascal
<fpc-pascal at lists.freepascal.org> wrote:
> How big a size is the git clone going to pull?

: ok;: Fri 13 9:13; cd /tmp;:
: kevin at yona on pts/7; time git clone
https://gitlab.com/freepascal.org/fpc/source.git fpc.git > fpc.git.out
2>&1
git clone https://gitlab.com/freepascal.org/fpc/source.git fpc.git >
2>&1  98.46s user 3.52s system 199% cpu 51.065 total
: ok;: Fri 13 9:14; cd /tmp;:
: kevin at yona on pts/7; time svn co
https://github.com/fpc/FPCSource/trunk fpc.svn > fpc.svn.out 2>&1
svn co https://github.com/fpc/FPCSource/trunk fpc.svn > fpc.svn.out
2>&1  9.27s user 7.62s system 48% cpu 34.517 total
: ok;: Fri 13 9:15; cd /tmp;:
: kevin at yona on pts/7; du -sh fpc.*
551M fpc.git
4.0K fpc.git.out
739M fpc.svn
972K fpc.svn.out

> By the looks of it I get the impression that the git clone will download every
> single tag/branch/commit etc ever done and then the git checkout activates the
> actual tagged file set?
> If this is correct then the size on disk will be too big.

Full git repositories are normally smaller than svn working copies -
and that's the
case here. By using git you'll be saving a bit under 200M. If you're
curious why,
it boils down to git storing the repo very efficiently and svn needing
two copies
of every file in a working copy.

In addition if you're really concerned about disk space you can always
go into the git
repo, change to the branch you want and then delete the .git
directory. But if you
were keeping the .svn directory I don't see the point since...

: ok;: Fri 13 9:17; cd /tmp;:
: kevin at yona on pts/7; du -sh fpc.*/.{svn,git}
373M fpc.svn/.svn
185M fpc.git/.git

> Now as I said I have not used git and for my day use cannot switch because we
> use properties of svn that are simply not available in git...

People think that and in my experience they are usually wrong. You
have opinions.
And that's fine. Enjoy them. As noted above, a checked out git repo is smaller.
Subsequent fetches will be far faster. In this case, as the data above
shows, your
workflow will improve.

Kevin


More information about the fpc-pascal mailing list