Src repository is available on git.freebsd.org

Bakul Shah bakul at iitbombay.org
Thu Dec 24 00:59:59 UTC 2020


On Dec 23, 2020, at 2:34 AM, Ulrich Spörlein <uqs at freebsd.org> wrote:
> 
> On Tue, 2020-12-22 at 14:18:10 -0800, Bakul Shah wrote:
>> On Dec 22, 2020, at 2:03 PM, David Wolfskill <david at catwhisker.org> wrote:
>>> 
>>> On Tue, Dec 22, 2020 at 01:51:39PM -0800, Bakul Shah wrote:
>>>> I have been tracking cgit-beta.freebsd.org since September.
>>>> What is the process for switching over to git.freebsd.org?
>>>> I thought there were instructions for that but I can't find them any more!
>>>> Thanks.
>>>> ....
>>> 
>>> I aqssumed(!) that the hashes would be different, so I moved aside the
>>> repo I had from cgit-beta and cloned a new one (from git.freebsd/org),
>>> then removed the old one once I was satisfied that the new one was OK.
>> 
>> Forgot to add that I wanted to switch over *without* blowing away 3.2GB
>> of local git bits. Hashes shouldn't change unless something major got
>> redone. Comparing hashes from my local repo with https://cgit.freebsd.org/src/commit/
>> I see they are the same.
> 
> 3.2GB sounds wrong, it looks like you have the new hashes and the old hashes and no GC run in between. This is expected and would fix itself over time, you might want to compress things down to 1.6GB however, using: git gc --prune=now

In spite of this the repo remains at 3.0G. Though now there are a bunch lines like 

warning: reflog of 'refs/notes/commits' references pruned commits
warning: reflog of 'refs/remotes/origin/main' references pruned commits
warning: reflog of 'refs/remotes/origin/releng/11.0' references pruned commits
warning: reflog of 'refs/remotes/origin/releng/7.1' references pruned commits
warning: reflog of 'refs/remotes/origin/releng/5.5' references pruned commits
warning: reflog of 'refs/remotes/origin/releng/4.8' references pruned commits
warning: reflog of 'refs/remotes/origin/releng/8.4' references pruned commits
warning: reflog of 'refs/remotes/origin/releng/9.3' references pruned commits
warning: reflog of 'refs/remotes/origin/releng/8.3' references pruned commits

in gc.log. I fixed that with

git reflog expire --all --stale-fix

> BEWARE: that you don't have any loose refs that you still might need later on. If all your changes are in regular branches and you didn't go wild with rebase -i or anything, then this should be safe.
> 
> To not re-download everything, use --reference to point to an existing clone, that is:
> 
> git clone --reference /path/to/old/clone https://git.FreeBSD.org/src.git /path/to/new/clone
> 
> You could also:
> git init
> git add remote ....
> cp the objects/* files over to the new repo
> git fetch

I just did

git remote set-url origin <new url> -- this really only rewrites the url= line in config!



More information about the freebsd-git mailing list