Prevent local changes getting pushed in Git
I have cloned a repository and the master
branch in my repo is tracking origin/master
. I created a work
branch and changed some config files specific to my dev machine to make the app work.
My normal workflow will be to switch to master
branch, merge changes made in work
branch and push
those changes upstream. The problem is that i don't want my specific chnages to get pushed. When i merge my work
branch into master
those changes are merged also.
The only solution I've found so far is not to commit those changes in work
but that's not a satisfactory solution.
Solution 1:
If you want to prevent committing (therefore also pushing) these local config files, you could use git update-index --assume-unchanged. Files marked with this flag will be assumed to never change (until you reset the flag with --no-assume-unchanged)
Solution 2:
If the files are not already being tracked, you can add them to a .gitignore file to your local repository, otherwise you will need to use git update-index --assume-unchanged
like Mauricio said.
Following is more information about .gitignore files:
http://git-scm.com/docs/gitignore