开发者

What commands do you use to refresh your development environment with Mercurial?

开发者 https://www.devze.com 2023-03-20 08:47 出处:网络
I guess I\'m learning somewhat backwards.I\'m very comfortable with git and never used mercurial until my most recent project.

I guess I'm learning somewhat backwards. I'm very comfortable with git and never used mercurial until my most recent project.

One of the things that bothers me is that sometimes I can't seem to refresh my development environment because of un-tracked file e开发者_JAVA技巧rrors. I really don't care whether files are tracked/untracked on the development server. I'd just like to be able to pull the most recent state of the repo from bitbucket.

Unfortunately, I sometimes end up resorting to nuking the app and re-cloning. Normally this wouldn't be that big of a deal but there are dependencies that I need to add back to the app each time I do this because they are not stored in the repo.

With git I would run...

git reset --hard; git checkout master -f; git pull; git checkout origin/master -f

What's the mercurial equivalent? I've tried...

hg revert --all; hg pull; hg update;

Which seems to work as I would expect it sometimes. When it doesn't work it aborts due to the untracked file errors. I'm looking for something that works all the time.


hg up --clean

That's all there is to it. (hg up rather than hg update because hg is cooler than git and allows unique abbreviations. I dislike the way when I'm forced to use git it doesn't accept git ci like a sane version control system. I know I could make an alias... but I haven't ever got round to it partially as I don't use it very often at all)

hg help [command] (or hg [command] --help) is useful. The help for revert mentions that you probably want to use hg update -r rev or hg update --clean . instead.

This will only change tracked files. Untracked files will be left alone, which I think is what you want.

0

精彩评论

暂无评论...
验证码 换一张
取 消