elesser
elesser

Reputation: 135

Mercurial: info on modified files

Before pulling from the central repositiry, I usually use the 'hg incoming' command to see what I will be pulling. However, this only gives me a list of changesets with some comments, and not a list of the actual files that have been modified.

1) In such a situation, how can I get a list of modified files (including some basic info about the chane, like Removed, Moved, etc)?

2) Similarly, when I do an 'hg status', I get the differences between my local working copy and what is currently on the repository. However, a more useful feature would be to get the differences between what is incoming and my local working copy. How can I get this?

Thanks!

Upvotes: 3

Views: 359

Answers (2)

anton.burger
anton.burger

Reputation: 5706

If you don't have a recent enough version for --stat, you can get a similar overview using status:

cd repo

// grab the newest changes into a bundle
hg incoming --bundle morechanges.bun

// get an id for the current tip
hg tip
  changeset: x:abcdef
  ...

// see what's changed by overlaying the bundle on the repo
hg -R morechanges.bun status --rev abcdef:tip
  //info you're looking for

// everything's good; add the bundle to the repo
hg pull morechanges.bun

rm morechanges.bun

Upvotes: 1

VonC
VonC

Reputation: 1329082

1/ Most options are presented in "how to see files in repository before running 'update'":

hg incoming --stat

Notes:

  • For remote repository, using --bundle avoids downloading the changesets twice if the incoming is followed by a pull.
  • --stat: output diffstat-style summary of changes.
    (ie: Statistics of changes with the following format: "modified files: +added/-removed lines")

2/ See RDiff extension (and the SO question "Using Mercurial, is there an easy way to diff my working copy with the tip file in the default remote repository")

Upvotes: 3

Related Questions