"GOT", but the "O" is a cute, smiling pufferfish. Index | Thread | Search

From:
Stefan Sperling <stsp@stsp.name>
Subject:
Re: Some random whining
To:
Christian Weisgerber <naddy@mips.inka.de>
Cc:
gameoftrees@openbsd.org
Date:
Wed, 1 Sep 2021 17:09:06 +0200

Download raw body.

Thread
On Wed, Sep 01, 2021 at 01:39:47PM +0200, Christian Weisgerber wrote:
> I'll just whine about some random things I noticed while using got:
> 
> * "got cherrypick" is slow in a large tree like OpenBSD ports.

This is mostly because of pre-condition checks that run before the actual
cherrypick operation. It is the cost of running 'got log' on the branch.

I'm aware of this and already tried to find another way to do this but
could not find any way. The downside of removing the checks would be
that cherrypick could be used in non-sensical ways between branches
that aren't related (or against a branch itself).
On the other hand, experienced users will know how to use it as intended.
So perhaps the checks could be dropped if the performance benefit
outweighs the potential usability issues created when someone attempts
using this command in a non-sensical way.

> * "got commit" recurses into directories listed in .gitignore.  Why?

The intended purpose of ignores is to prevent ignored files from being
picked up implicitly by 'got add -R' and hidden by 'got status'.

I think an already versioned and modified file should be committed
regardless of whether it matches the list.
We just fixed a case in 'got rebase' where ignoring files/directories
caused problems during the commit phase when rebasing:
https://git.gameoftrees.org/gitweb/?p=got.git;a=commitdiff;h=0e33f8e0
Granted, it doesn't make much sense to add '**/gotwebd' to the ignore list
in this case. But sometimes people will do such nonsense and that should
not break the tool.

> * I typed something nonsensical:
> 
>   $ got up -b 0.56      # i.e., a tag
>   got: bad object data
>   got-read-pack: bad object data
> 
>   That error message is not helpful.

I agree. This is a known issue but nobody has fixed it yet.