comparison mercurial/help.py @ 7387:7e9a15fa6c8f

update help on git diffs
author Matt Mackall <mpm@selenic.com>
date Tue, 18 Nov 2008 15:35:34 -0600
parents 3909e2c2622b
children 6a0bc2dc9da6
comparison
equal deleted inserted replaced
7386:86bfd65532ac 7387:7e9a15fa6c8f
214 214
215 A range acts as a closed interval. This means that a range of 3:5 215 A range acts as a closed interval. This means that a range of 3:5
216 gives 3, 4 and 5. Similarly, a range of 4:2 gives 4, 3, and 2. 216 gives 3, 4 and 5. Similarly, a range of 4:2 gives 4, 3, and 2.
217 ''')), 217 ''')),
218 218
219 (['gitdiffs'], _('Git Extended Diff Format'), 219 (['diffs'], _('Diff Formats'),
220 _(r''' 220 _(r'''
221 Mercurial's default format for showing changes between two versions 221 Mercurial's default format for showing changes between two versions
222 of a file is compatible to the unified format of GNU diff, which 222 of a file is compatible with the unified format of GNU diff, which
223 can be used by GNU patch and many other standard tools. 223 can be used by GNU patch and many other standard tools.
224 224
225 While this de facto standardized format is often enough, there are 225 While this standard format is often enough, it does not encode the
226 cases where additional change information should be included in the 226 following information:
227 generated diff file:
228 227
229 - executable status 228 - executable status
230 - copy or rename information 229 - copy or rename information
231 - changes in binary files 230 - changes in binary files
232 - creation or deletion of empty files 231 - creation or deletion of empty files
233 232
234 Mercurial adopted the extended diff format which was invented for 233 Mercurial also supports the extended diff format from the git VCS
235 the git VCS to support above features. 234 which addresses these limitations. The git diff format is not
236 235 produced by default because there are very few tools which
237 The git extended diff format is not produced by default, because 236 understand this format.
238 there are only very few tools (yet) which understand the additional 237
239 information provided by them. 238 This means that when generating diffs from a Mercurial repository
240
241 This means that, when generating diffs from a Mercurial repository
242 (e.g. with "hg export"), you should be careful about things like 239 (e.g. with "hg export"), you should be careful about things like
243 file copies and renames or other things mentioned above, because 240 file copies and renames or other things mentioned above, because
244 when applying a standard diff to a different repository, this extra 241 when applying a standard diff to a different repository, this extra
245 information is lost. Mercurial's internal operations (like push and 242 information is lost. Mercurial's internal operations (like push and
246 pull) are not affected by this, because they use a different, binary 243 pull) are not affected by this, because they use an internal binary
247 format for communicating changes. 244 format for communicating changes.
248 245
249 To make Mercurial produce the git extended diff format, use the 246 To make Mercurial produce the git extended diff format, use the
250 --git option available for many commands, or set 'git = True' in the 247 --git option available for many commands, or set 'git = True' in the
251 [diff] section of your hgrc. You do not need to set this option when 248 [diff] section of your hgrc. You do not need to set this option when