korylprince
korylprince

Reputation: 3009

Keeping local changes in a git repo

Say I have a file in a git repo:

#file.py

setting1 = default1
setting2 = default2

<some code>

Now I want to make some local changes that don't get pushed back into the repo

#file.py - local change

setting1 = mysetting1
setting2 = mysetting2

<some code>

Say sometime in the future the upstream repo is updated, and I want to pull down their changes without messing up my local settings. I.E a git command I could run that would update the file so that it would be

#file.py - updated copy

setting1 = mysetting1
setting2 = mysetting2

<new code>

Is there some way to do this, either with branches or some other git feature where I don't have to put local settings in a separate file?

I've seen several other questions like this, but they focus on excluding a whole file.

Thanks

Upvotes: 6

Views: 970

Answers (2)

Adam Dymitruk
Adam Dymitruk

Reputation: 129564

What you are doing is probably changing connection strings and such. It is something that is local to your environment. The proper way to handle this is through smudge/clean scripts. Take a look at the "Git Attributes" chapter in the Pro Git book (freely available).

Upvotes: 3

fork0
fork0

Reputation: 3459

Take a look at git stash. It is also a "whole file" method, but you might find it is flexible enough.

Otherwise, using git gui and a lot of rebasing (git rebase --interactive) or cherry-picking (git cherry-pick) or just a side branch should help.

Upvotes: 2

Related Questions