Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 35061
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 10, 20262026-05-10T14:10:34+00:00 2026-05-10T14:10:34+00:00

How do I ignore files in Subversion? Also, how do I find files which

  • 0

How do I ignore files in Subversion?

Also, how do I find files which are not under version control?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-10T14:10:35+00:00Added an answer on May 10, 2026 at 2:10 pm

    (This answer has been updated to match SVN 1.8 and 1.9’s behaviour)

    You have 2 questions:

    Marking files as ignored:

    By "ignored file" I mean the file won’t appear in lists even as "unversioned": your SVN client will pretend the file doesn’t exist at all in the filesystem.

    Ignored files are specified by a "file pattern". The syntax and format of file patterns is explained in SVN’s online documentation: http://svnbook.red-bean.com/nightly/en/svn.advanced.props.special.ignore.html "File Patterns in Subversion".

    Subversion, as of version 1.8 (June 2013) and later, supports 3 different ways of specifying file patterns. Here’s a summary with examples:

    1 – Runtime Configuration Area – global-ignores option:

    • This is a client-side only setting, so your global-ignores list won’t be shared by other users, and it applies to all repos you checkout onto your computer.
    • This setting is defined in your Runtime Configuration Area file:
      • Windows (file-based) – C:\Users\{you}\AppData\Roaming\Subversion\config
      • Windows (registry-based) – Software\Tigris.org\Subversion\Config\Miscellany\global-ignores in both HKLM and HKCU.
      • Linux/Unix – ~/.subversion/config

    2 – The svn:ignore property, which is set on directories (not files):

    • This is stored within the repo, so other users will have the same ignore files. Similar to how .gitignore works.

    • svn:ignore is applied to directories and is non-recursive or inherited. Any file or immediate subdirectory of the parent directory that matches the File Pattern will be excluded.

    • While SVN 1.8 adds the concept of "inherited properties", the svn:ignore property itself is ignored in non-immediate descendant directories:

        cd ~/myRepoRoot                             # Open an existing repo.   echo "foo" > "ignoreThis.txt"                # Create a file called "ignoreThis.txt".    svn status                                  # Check to see if the file is ignored or not.   > ?    ./ignoreThis.txt   > 1 unversioned file                        # ...it is NOT currently ignored.    svn propset svn:ignore "ignoreThis.txt" .   # Apply the svn:ignore property to the "myRepoRoot" directory.   svn status   > 0 unversioned files                       # ...but now the file is ignored!    cd subdirectory                             # now open a subdirectory.   echo "foo" > "ignoreThis.txt"                # create another file named "ignoreThis.txt".    svn status   > ?    ./subdirectory/ignoreThis.txt        # ...and is is NOT ignored!   > 1 unversioned file 

      (So the file ./subdirectory/ignoreThis is not ignored, even though "ignoreThis.txt" is applied on the . repo root).

    • Therefore, to apply an ignore list recursively you must use svn propset svn:ignore <filePattern> . --recursive.

      • This will create a copy of the property on every subdirectory.
      • If the <filePattern> value is different in a child directory then the child’s value completely overrides the parents, so there is no "additive" effect.
      • So if you change the <filePattern> on the root ., then you must change it with --recursive to overwrite it on the child and descendant directories.
    • I note that the command-line syntax is counter-intuitive.

      • I started-off assuming that you would ignore a file in SVN by typing something like svn ignore pathToFileToIgnore.txt however this is not how SVN’s ignore feature works.

    3- The svn:global-ignores property. Requires SVN 1.8 (June 2013):

    • This is similar to svn:ignore, except it makes use of SVN 1.8’s "inherited properties" feature.

    • Compare to svn:ignore, the file pattern is automatically applied in every descendant directory (not just immediate children).

      • This means that is unnecessary to set svn:global-ignores with the --recursive flag, as inherited ignore file patterns are automatically applied as they’re inherited.
    • Running the same set of commands as in the previous example, but using svn:global-ignores instead:

        cd ~/myRepoRoot                                    # Open an existing repo   echo "foo" > "ignoreThis.txt"                       # Create a file called "ignoreThis.txt"   svn status                                         # Check to see if the file is ignored or not   > ?    ./ignoreThis.txt   > 1 unversioned file                               # ...it is NOT currently ignored    svn propset svn:global-ignores "ignoreThis.txt" .   svn status   > 0 unversioned files                              # ...but now the file is ignored!    cd subdirectory                                    # now open a subdirectory   echo "foo" > "ignoreThis.txt"                       # create another file named "ignoreThis.txt"   svn status   > 0 unversioned files                              # the file is ignored here too! 

    For TortoiseSVN users:

    This whole arrangement was confusing for me, because TortoiseSVN’s terminology (as used in their Windows Explorer menu system) was initially misleading to me – I was unsure what the significance of the Ignore menu’s "Add recursively", "Add *" and "Add " options. I hope this post explains how the Ignore feature ties-in to the SVN Properties feature. That said, I suggest using the command-line to set ignored files so you get a feel for how it works instead of using the GUI, and only using the GUI to manipulate properties after you’re comfortable with the command-line.

    Listing files that are ignored:

    The command svn status will hide ignored files (that is, files that match an RCA global-ignores pattern, or match an immediate parent directory’s svn:ignore pattern or match any ancesor directory’s svn:global-ignores pattern.

    Use the --no-ignore option to see those files listed. Ignored files have a status of I, then pipe the output to grep to only show lines starting with "I".

    The command is:

    svn status --no-ignore | grep "^I" 

    For example:

    svn status > ? foo                             # An unversioned file > M modifiedFile.txt                # A versioned file that has been modified  svn status --no-ignore > ? foo                             # An unversioned file > I ignoreThis.txt                  # A file matching an svn:ignore pattern > M modifiedFile.txt                # A versioned file that has been modified  svn status --no-ignore | grep "^I" > I ignoreThis.txt                  # A file matching an svn:ignore pattern 

    ta-da!

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

so I have started using Subversion and am confused about the ignore files. From
How do I make diff ignore temporary files like foo.c~ ? Is there a
I need to diff two log files but ignore the time stamp part of
I'm having to manage some ASPNETDB.MDF files with my subversion repo. Everytime I visit
I have a subversion repo with directories that contain the usual source-controlled files, but
How can I delete all files that are being ignored within a Subversion checkout?
I have seen samples for Mercurial ignore files for Visual Studio , amongst others.
I am trying to get mercurial to ignore hidden files for a specific user.
I want to ignore .pyc files in the Netbeans project browser. I think I
Is there a way to make Python ignore any .pyc files that are present

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.