简体   繁体   中英

How to do Mercurial's 'hg remove' for all missing files?

I use this to remove a file from the repo:

hg remove <full file path> 

What command can you use to do an hg remove on all files that have been deleted locally?

By deleted locally, I mean those showing up with an ! when you do hg status .

For adds, you can just do hg add to add all new files (those prefixed with ? ).

This will add all new files that are not ignored, and remove all locally missing files

hg addremove

Either of these will remove all locally missing files(They are the same command)

hg remove --after
hg remove -A

如果您打算做addremove和承诺,它可以用“-A”选项加入如图所示在这里

hg commit -A -m 'Commit with addremove'

The original question asked how to remove (ie forget) files that show up as "!" when using hg st . A direct approach which has the advantage of transparency is to use hg st with the -n option:

hg -v forget $(hg st -nd)

(Of course the files will only be forgotten at the next commit .)

The flags are well-documented elsewhere (eg by the hg command itself), but in brief:

  • -n means "filename only"
  • -d means "select files that have been deleted"

If you want to addremove and commit, but are not ready to commit the rest of your changes, I think you still have to enumerate them:

$ hg st
M modified-file
A added-file
R removed-file-1
R removed-file-2

$ hg commit -m"remove removed-file-1 and removed-file-2" removed-file-*
abort: removed-file-*: No such file or directory

$ hg commit -m"remove removed-file-1 and removed-file-2" removed-file-1 removed-file-2
committed changeset 185:628800a7af84

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM