mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 17:27:53 +03:00
1e1f58f358
The 'Bin' marker was added to every changed file for which we could not find any diff changes. This included binary files but also copy/renames and mode changes. Since Mercurial regular diff format emits a 'Binary file XXX has changed' line when fed with binary files, we use that and the usual git marker to tell them from other cases. In particular, new empty files are no longer reported as binary. Still, this fix is not complete since copy/renames/mode changes are now reported as '0' lines changes, instead of 'Bin'.
72 lines
1.4 KiB
Raku
72 lines
1.4 KiB
Raku
$ hg init repo
|
|
$ cd repo
|
|
$ i=0; while [ "$i" -lt 213 ]; do echo a >> a; i=`expr $i + 1`; done
|
|
$ hg add a
|
|
$ cp a b
|
|
$ hg add b
|
|
|
|
Wide diffstat:
|
|
|
|
$ hg diff --stat
|
|
a | 213 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
b | 213 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
2 files changed, 426 insertions(+), 0 deletions(-)
|
|
|
|
diffstat width:
|
|
|
|
$ COLUMNS=24 hg diff --config ui.interactive=true --stat
|
|
a | 213 ++++++++++++++
|
|
b | 213 ++++++++++++++
|
|
2 files changed, 426 insertions(+), 0 deletions(-)
|
|
|
|
$ hg ci -m adda
|
|
|
|
$ cat >> a <<EOF
|
|
> a
|
|
> a
|
|
> a
|
|
> EOF
|
|
|
|
Narrow diffstat:
|
|
|
|
$ hg diff --stat
|
|
a | 3 +++
|
|
1 files changed, 3 insertions(+), 0 deletions(-)
|
|
|
|
$ hg ci -m appenda
|
|
|
|
$ printf '\0' > c
|
|
$ touch d
|
|
$ hg add c d
|
|
|
|
Binary diffstat:
|
|
|
|
$ hg diff --stat
|
|
c | Bin
|
|
1 files changed, 0 insertions(+), 0 deletions(-)
|
|
|
|
Binary git diffstat:
|
|
|
|
$ hg diff --stat --git
|
|
c | Bin
|
|
d | 0
|
|
2 files changed, 0 insertions(+), 0 deletions(-)
|
|
|
|
$ hg ci -m createb
|
|
|
|
$ printf '\0' > "file with spaces"
|
|
$ hg add "file with spaces"
|
|
|
|
Filename with spaces diffstat:
|
|
|
|
$ hg diff --stat
|
|
file with spaces | Bin
|
|
1 files changed, 0 insertions(+), 0 deletions(-)
|
|
|
|
Filename with spaces git diffstat:
|
|
|
|
$ hg diff --stat --git
|
|
file with spaces | Bin
|
|
1 files changed, 0 insertions(+), 0 deletions(-)
|
|
|