如何使用 Mercurial 忘记所有已删除的文件

发布于 2024-08-26 13:46:44 字数 134 浏览 7 评论 0原文

我是 Mercurial 的新手,在清理项目中的图像文件夹后,我显示了大量文件!在“汞状态”中。我可以为每个输入“hg忘记”,但必须有一个更简单的方法。

那么我怎样才能告诉 Mercurial 忘记文件夹中所有已删除的(状态=!)文件呢?

I am new to Mercurial and after a cleanup of the image folder in my project, I have a ton of files showing with ! in the 'hg status'. I can type a 'hg forget ' for each, but there must be an easier way.

So how can I tell mercurial to forget about all the removed (status = !) files in a folder?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

海未深 2024-09-02 13:46:44

如果您也可以添加任何存在且不被忽略的文件,那么:

hg addremove

这将是一种流行的方法。

If you're also okay with adding any files that exist and aren't ignored then:

hg addremove

would a popular way to do that.

耀眼的星火 2024-09-02 13:46:44

使用文件集 (Mercurial 1.9):

hg forget "set:deleted()"

一般来说,在 Linux 或 Mac 上:

hg status -dn | while read file ; do hg forget "$file" ; done

或者,如果您的 shell 允许,如果文件不是太多,并且文件名不包含空格或特殊字符,则:

hg forget $(hg st -dn)

I

With fileset (Mercurial 1.9):

hg forget "set:deleted()"

In general, on Linux or Mac:

hg status -dn | while read file ; do hg forget "$file" ; done

Or, if your shell allows it, if there are not too many files, and if the filenames do not contain spaces or special characters, then:

hg forget $(hg st -dn)

I

初相遇 2024-09-02 13:46:44

您可以尝试:

hg forget -I '*'

以便将所有文件包含在您的忘记命令中。

You can try:

hg forget -I '*'

in order to include all files in your forget command.

趴在窗边数星星i 2024-09-02 13:46:44

通过使用 -d 状态标志来显示丢失的文件:

for file in $(hg status -d | cut -d " " -f 2); echo hg 忘记 $file;完成

在存储库的根目录中运行此命令,如果您对结果感到满意,请删除echo

这比已接受的答案not 做任何额外的工作,例如添加一堆未跟踪的文件。

By using the -d flag for status, which displays missing files:

for file in $(hg status -d | cut -d " " -f 2); do echo hg forget $file; done

Run this in the root of your repo, and if you're happy with the results, remove the echo

This has the bonus over the accepted answer of not doing any additional work, e.g. adding a bunch of untracked files.

野却迷人 2024-09-02 13:46:44

更短而不是

for file in $(hg status -d | cut -d " " -f 2); do echo hg forget $file; done

这个

hg status -d | cut -d " " -f 2 | xargs echo hg forget # test case
hg status -d | cut -d " " -f 2 | xargs hg forget # real work

more shorter instead of

for file in $(hg status -d | cut -d " " -f 2); do echo hg forget $file; done

this

hg status -d | cut -d " " -f 2 | xargs echo hg forget # test case
hg status -d | cut -d " " -f 2 | xargs hg forget # real work
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文