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

From: Lorenzo Salvadore <developer_at_lorenzosalvadore.it>
Date: Tue, 28 Mar 2023 09:02:33 UTC
------- Original Message -------
On Tuesday, March 28th, 2023 at 9:59 AM, Matthias Andree mandree@FreeBSD.org wrote:


> 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 agree with Matthias Andree, using poudriere to update is odd.

I use git worktrees for my workflow. I have three trees:
- in one tree I have an exact copy of upstream;
- in another tree I have a copy of upstream with my local patches applied;
- the last tree is for testing patches with poudriere before I push them
or submit them for review.

> I'm wary of git merge/apply because i'm not a dev and so don't want to push
> changes.

Do not worry about that: if you are not a dev, you do not have the necessary
permissions to push any change by accident. You can experiment safely.

Cheers,

Lorenzo Salvadore