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
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:
.example
file (and then he can just put his real login data into the newly created App.config
file).App.config
with real hardcoded user data already exists, it won't be overwritten when building because the BeforeBuild event will only happen if App.config
does not already exist