git/list[1] front-page[2] threads[3] people[4] search[5] about
 

How to "git add ." when some files are not accessible (permission denied)?

From
DSDirk Süsserott <newsletter@dirk.my1.cc>
Date
Mar 1, 2008, 13:46 UTC
Message-ID
<47C95E34.1050306@dirk.my1.cc>
Hello --

First of all: I'm using Git with Windows. Most of the time it works *very* good, but now I've a problem that might appear to Unix users as well. I had the idea to use Git to track changes in my C:\WINDOWS directory. I thought the following would work:

$ cd /c/WINDOWS (1) $ git init (2) $ git add . (3) $ git commit -m "Initial" (4)

And then issue "git status" or so to see the differences after installing or running some software.

However, when issueing (3) "git add ." it adds hundreds and thousands of files and then stops with

     error: open("foo"): Permission denied: foo
     fatal: unable to index file foo

The file "foo" is not accessible for me, even though I'm administrator. This might occur to Windows and Linux persons as well, I guess. The adding stops overall.

The question is: is there a way to tell "git add ." to add all files but ignore those that cannot be added due to lack of authorization?

Or, more generally spoken: can I tell "git add" to add only those files it can handle and ignore the rest? The "-f" switch doesn't work and some exclude lists on a per file basis are not applicable for my purpose as I don't know the files in advance.

I'm aware that I could do it with some fancy shell commands, but very often I was surprised how many really cool commands Git offers to "do what I mean". Wished other software would be so usable :-).

Cheers,
  -- Dirk
Next: Jeff King
Message 1 of 32 in “How to "git add ." when some files are not accessible (permission denied)?”
  1. Dirk SüsserottMar 1, 2008
  2. Jeff KingMar 2, 2008
  3. Dirk SüsserottMar 3, 2008
  4. Junio C HamanoMar 3, 2008
  5. Dirk SüsserottMar 3, 2008
  6. Alex RiesenMar 2, 2008
  7. Make the exit code of add_file_to_index actually usefulAlex Riesen, Mar 2, 2008
  8. Extend interface of add_files_to_cache to allow ignore indexing errorsAlex Riesen, Mar 2, 2008
  9. Add --ignore-errors to git-add to allow it to skip files with read errorsAlex Riesen, Mar 2, 2008
  10. Add a test for git-add --ignore-errorsAlex Riesen, Mar 2, 2008
  11. Johannes SchindelinMar 2, 2008
  12. Junio C HamanoMar 2, 2008
  13. Alex RiesenMar 2, 2008
  14. Joachim B HagaMar 2, 2008
  15. Alex RiesenMar 3, 2008
  16. Alex RiesenMay 12, 2008
  17. Make the exit code of add_file_to_index actually usefulAlex Riesen, May 12, 2008
  18. Extend interface of add_files_to_cache to allow ignore indexing errorsAlex Riesen, May 12, 2008
  19. Add --ignore-errors to git-add to allow it to skip files with read errorsAlex Riesen, May 12, 2008
  20. Add a test for git-add --ignore-errorsAlex Riesen, May 12, 2008
  21. Add a config option to ignore errors for git-addAlex Riesen, May 12, 2008
  22. Junio C HamanoMay 13, 2008
  23. Alex RiesenMay 13, 2008
  24. Junio C HamanoMay 13, 2008
  25. Alex RiesenMay 13, 2008
  26. Junio C HamanoMay 12, 2008
  27. Alex RiesenMay 12, 2008
  28. Junio C HamanoMay 12, 2008
  29. Alex RiesenMay 12, 2008
  30. Junio C HamanoMay 12, 2008
  31. Alex RiesenMay 13, 2008
  32. Daniel BarkalowMar 3, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.