Q:

is there any way how to tell git to ignore certain lines of a file?

I'm trying to put my .bashrc .gitconfig and other useful configs on to github (because there are some valuable pieces of code I want to share ) but the thing is I don't want to share certain "valuable informations about me", 
so is there any way around to tell git to ignore certain patern or line of a file (for instance in .gitignore? ) 
note: I figure how to do my bashrc sharing ( I will keep in bashrc public things and move private to bashprofile that I wont share)  but I'm kinda wondering how to share my gitconfig (there are some pretty good aliases) 
thx

A:

I think it is conceivable to do something of the sort with gitattributes and the smudge and clean filters but it would be messy and probably rather fragile.  My method is simply to put things I don't want public in a non-shared ~/.bashrc.local file and source that file inside from the shared .bashrc, e.g.
if [ -r ~/.bashrc.local ]; then
    . ~/.bashrc.local
fi

This also allows me to maintain system/machine-specific configs without screwing up my global .bashrc.

