mercurialdvcstortoisehgkiln

how to ignore files in kiln/mercurial using tortoise hg "that are part of the repository"


We use tortoise hg with Kiln. In my vs 2010 c# project there are some files that are part of the repository but I would like tortoise hg to ignore them when I make a commit. For eg., say in a login screen I may hard code the userid, password for testing. I dont really want this file considered during a commit. I understand .hgignore file but this really works for files that are not part of the repo. Any trick in tortoise hg to ignore files that are part of the repo ? (so they do not show up as modified (M) during a commit.) thanks


Solution

  • I always use a combination of .hgignore and BeforeBuild (in the .csproj file) for things like this.

    In one of my pet projects, I have the following setup:

    App.config contains my real hardcoded user id and password for testing.
    App.config.example is identical, but with fake data like "dummy_user" and "dummy_pw".

    App.config is not part of the repository, and it's ignored (in .hgignore).
    App.config.example is part of the repository.

    Then, I have the following in the BeforeBuild target in the .csproj file of my solution:

    <Target Name="BeforeBuild">
      <Copy
        Condition="!Exists('App.config')"
        SourceFiles="App.config.example" 
        DestinationFiles="App.config"/>
    </Target>
    

    All this together has the following effect: