Re: [PATCH] Add git-find-new-files to spot files added to the tree, but not the repository
- From
Junio C Hamano <junkio@cox.net>
- Date
- Jul 23, 2005, 20:44 UTC
- Message-ID
- <7vsly5qmkd.fsf@assigned-by-dhcp.cox.net>
- In-Reply-To
- <20050723074219.GB3255@mythryan2.michonline.com>
Ryan Anderson <ryan@michonline.com> writes:
> Add git-find-new-files to find files that are in the tree, but > not checked into the repository.
You _ought_ to be able to just say:
$ git-ls-files --others --exclude-from=<exclude pattern file>
and be done with it. Also please see the thread about Cogito and StGIT's use of .gitignore and .git/exclude files.
The current implementation of "git-ls-files" exclude mechanism may have rooms for improvements; the last time I checked, it only did the matching of patterns against filename without leading directories). The world will be a better place if somebody extends it, instead of working around its limitation.
I may be tempted to doing it myself, but I'm in the middle of something else, so ...
Show 7 quoted lines
> +# find . -name .git -type d -prune -o -type f -print \ > +# | grep -v -e .tree1 -e .tree2 \ > +# | sed -e "s/^\.\///" \ > +# | sort >.tree1 > +# git-ls-files | grep -v -e .tree1 -e .tree2 \ > +# | sort >.tree2 > +# diff -u .tree1 .tree2
It does not matter since the above is just an example and I think you should be able to just use "ls-files --others", but just FYI, you could have written "comm -23 .tree1 .tree2" above instead of "diff -u".