Re: what's the Correct git update method keeping local changes

From: Matthias Andree <mandree_at_FreeBSD.org>
Date: Tue, 28 Mar 2023 07:59:45 UTC
Am 28.03.23 um 05:19 schrieb void:
> Hello hackers@
> 
> I looked in the porters and developers handbooks and couldn't find 
> reference
> to a Correct method of working with git, poudriere, the ports tree and
> local changes for a use case like mine.
> 
> Right now my workflow looks like this:
> 
> 1. apply patch either with patch -p0 < patchfile or git apply from the 
>     top of the ports tree
> 2. git stash
> 3. poudriere ports -u -q
> 4. git stash pop
> 5. run the poudriere build
> 
> then, subsequent poudriere builds need steps 2-5 repeated.
> 
> I'm wary of git merge/apply because i'm not a dev and so don't want to push
> changes. but I want to update the ports tree for poudriere with local 
> changes
> keeping them local.
> 
> What's the best way?

So - there's some discrepancy in your tools there, you are using git to 
keep local patches, and poudriere to update.  This seems odd.  Is 
poudriere using git to update your ports tree? Portsnap?  Something 
else? We don't know.

I personally do not use poudriere ports -u, in fact I am maintaining my 
/usr/ports in Git (but then I occasionally push from my tree into 
FreeBSD's), and poudriere knows the ports tree with a "null" method, and 
then 2...4 become a simple "git pull --rebase --autostash".

> $ poudriere ports -l
> PORTSTREE METHOD TIMESTAMP           PATH
> default   null   2023-03-27 05:59:35 /usr/ports

-- 
Matthias Andree
FreeBSD ports committer