Mercurial > hg > mercurial-crew-with-dirclash
view tests/fish-merge @ 1411:e2ba788545bf
hgweb: make viewing of non-text work in hgweb
We use mimetypes.guess_type to guess file types and util.binary to determine
whether a file is displayable as text.
This lets us display displayable text files in our normal source view.
Files that appear to be binary will be displayed as something like
"(binary:image/gif)".
Clicking on raw view will send the raw file with an appropriate MIME
type. Thus things like GIFs will now be viewable inside hgweb without
making a mess. Further, things like postscript files that are text
should show source in the normal view and a browser can launch a
postscript viewer for the raw view.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Tue, 18 Oct 2005 23:50:55 -0700 |
parents | 0902ffece4b4 |
children |
line wrap: on
line source
#!/bin/sh set -e set -x # skip commit logs HGMERGE=tkmerge; export HGMERGE EDITOR=true; export EDITOR rm -rf m m1 m2 mkdir m cd m echo "m this that" echo "this" > a echo "that" > b hg init hg addremove hg commit echo "a:" `hg dump a` "b:" `hg dump b` echo cd .. echo "m2 this that " mkdir m2 cd m2 hg branch ../m hg checkout echo "a:" `hg dump a` "b:" `hg dump b` echo cd ../m echo "m this1 that " echo "this1" > a hg commit echo "a:" `hg dump a` "b:" `hg dump b` echo cd .. echo "m1 this1 that " mkdir m1 cd m1 hg branch ../m hg checkout echo "a:" `hg dump a` "b:" `hg dump b` echo cd ../m1 echo "m1 this1 that1" echo "that1" > b hg commit echo "a:" `hg dump a` "b:" `hg dump b` echo cd ../m2 echo "m2 this that2" echo "that2" > b hg commit echo "a:" `hg dump a` "b:" `hg dump b` echo cd ../m1 echo "m1:m2 this1 that1 that2" hg merge ../m2 # b should conflict, a should be fine echo "a:" `hg dump a` "b:" `hg dump b` echo cd ../m2 echo "m2 this2 that2" echo "this2" > a hg commit echo "a:" `hg dump a` "b:" `hg dump b` echo cd ../m2 echo "m2:m this12 that2" hg merge ../m # a should conflict, b should be fine echo "a:" `hg dump a` "b:" `hg dump b` echo # now here's the interesting bit # if we choose ancestor by file, no conflicts # otherwise we've got two equally close ancestors, each with a conflict # if we go back to the root, we'll have both conflicts again echo "m2:m1 this12 that12" hg merge ../m1 # should be clean echo "a:" `hg dump a` "b:" `hg dump b` echo