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

  • Generate a version number of my site thanks to git?
  • Git: refname 'master' is ambiguous
  • .gitignore is not working
  • Tips on using Git with svn in presence of a large number of svn externals
  • What can FishEye do that we cannot get from other tools for a git repository?
  • Concept of git tracking and git staging
  • #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

  • Error: Unable to access jarfile bfg.jar - BFG
  • Git: History of commits I have *checked out* since init/cloning
  • Remove multiple deleted items at once from Git - Command line
  • gitlist cannot get anything beyond repository list
  • Emacs git plugin - egg
  • Setting Up git-http-backend with apache 2.4
  • 2 Solutions collect form web for “Keeping local changes in a git repo”

    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.

    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).

    Git Baby is a git and github fan, let's start git clone.