Skip to content

Commit 22ca3a8

Browse files
authored
Update customize-your-build.md
1 parent b5a7cab commit 22ca3a8

File tree

1 file changed

+8
-9
lines changed

1 file changed

+8
-9
lines changed

docs/msbuild/customize-your-build.md

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,7 @@ translation.priority.ht:
2323
- "fr-fr"
2424
- "it-it"
2525
- "ja-jp"
26-
- "ko-kr"
27-
- "pl-pl"
26+
- "ko-kr" - "pl-pl"
2827
- "pt-br"
2928
- "ru-ru"
3029
- "tr-tr"
@@ -72,7 +71,7 @@ Directory.Build.targets is imported from Microsoft.Common.targets after importin
7271

7372
## Use case: multi-level merging
7473

75-
Supposing you have this standard solution structure:
74+
Suppose you have this standard solution structure:
7675

7776
````
7877
\
@@ -88,18 +87,18 @@ Supposing you have this standard solution structure:
8887
\Project2Tests
8988
````
9089

91-
It may be desirable to have common properties for all projects `(1)`, common properties for `src` projects `(2-src)`, and common properties for `test` projects `(2-test)`.
90+
It might be desirable to have common properties for all projects `(1)`, common properties for `src` projects `(2-src)`, and common properties for `test` projects `(2-test)`.
9291

93-
For msbuild to correctly merge the "inner" files (`2-src` and `2-test`) with the "outer" file (`1`), one must take into account that once msbuild finds a `Directory.Build.props` file, it stops further scanning. To continue scanning, and merge into the outer file, place this into both inner files:
92+
For msbuild to correctly merge the "inner" files (`2-src` and `2-test`) with the "outer" file (`1`), you must take into account that once msbuild finds a `Directory.Build.props` file, it stops further scanning. To continue scanning, and merge into the outer file, place this into both inner files:
9493

9594
`<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props'))" />`
9695

9796
A summary of msbuild's general approach is as follows:
9897

99-
- for any given project, msbuild finds the first `Directory.Build.props` upward in the solution structure, merges it with defaults, and stops scanning for more
100-
- if you want multiple levels to be found and merged, then [`<Import...>`](http://docs.microsoft.com/en-us/visualstudio/msbuild/property-functions#msbuild-getpathoffileabove) (shown above) the "outer" file from the "inner" file
101-
- if the "outer" file does not itself also import something above it, then scanning stops there
102-
- to control the scanning/merging process, use `$(DirectoryBuildPropsPath)` and `$(ImportDirectoryBuildProps)`
98+
- For any given project, msbuild finds the first `Directory.Build.props` upward in the solution structure, merges it with defaults, and stops scanning for more
99+
- If you want multiple levels to be found and merged, then [`<Import...>`](http://docs.microsoft.com/en-us/visualstudio/msbuild/property-functions#msbuild-getpathoffileabove) (shown above) the "outer" file from the "inner" file
100+
- If the "outer" file does not itself also import something above it, then scanning stops there
101+
- To control the scanning/merging process, use `$(DirectoryBuildPropsPath)` and `$(ImportDirectoryBuildProps)`
103102

104103
Or more simply: the first `Directory.Build.props` which doesn't import anything, is where msbuild stops.
105104

0 commit comments

Comments
 (0)