darnir darnir - 25 days ago 10
Git Question

Git ignore local changes to portions of tracked files

Specifically, I maintain a git repository of my dotfiles. I recently started working on a new machine and cloned my repository on the same.

Now, I wish to make some changes to my dotfiles which are specific to this system only. These changes I wish to ignore in my repository.

Other changes that I make, should continue to be tracked and committed.

For example, in my .gitconfig, I have a setting as:

[push]
default = simple


Now, on my new machine, the version of git being used it very old. It still not not support the setting
simple
for push. So, I'd like to change this, but only locally.

However, if I make any other changes to my .gitconfig, I'd like to keep track of those. Anyway I can achieve this?

EDIT:

I know of
git update-index --assume-unchanged
. The problem with it is that git will no longer track my file at all, until I reverse it. And then, it will track all changes.

I wish to ignore certain changes and track the rest.

Answer

I don't believe there's a specific command that will 'untrack' certain changes to a file. However, there's no reason that you couldn't create a local branch into which you pull changes from your remotes, but never send any changes back.

Comments