Re: How do I stop git enumerating my working directory
From: Paul Gardiner <hidden>
Date: 2016-06-15 22:44:52
Glenn Griffin wrote:
On Tue, Jul 1, 2008 at 8:57 AM, Paul Gardiner [off-list ref] wrote:quoted
Hi, I'm a recent convert to git. I've been swapping over my projects from cvs to git. The latest candidate for conversion is the config files for my Linux server. I've been using cvs to record all the config changes, and - mostly-automatically - to setup new servers. Git will do a far better job, I think, but I think I'm going to run into a problem: the root directory of the server will be the working directory. Only relatively few files will be under version control. How do I stop git enumerating the whole drive whenever I do things like git-diff?I'm doing a similar thing in my home directory where the vast majority of files are not being tracked, but only a select few are. I've found that git automatically handles this case much better than other SCM's like subversion because of it's concept of the index. Most of git's commands wont enumerate your directory they will first read the index to see what files it's interested in, and then do an lstat on those files to see which if any have changed. git-diff in particular should do this to my knowledge. git-status is one of the few commands that will actually enumerate your directory to tell you which files are untracked, so long as you use status with care you will probably find you don't need to do anything special or even setup a .gitignore. Like I said, that's my experience your's may vary.
Brilliant! I've now tried it and it does just as you say. I don't need git-status so it's just fine. Thanks for the advice. P.