首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从远程hg清除旧目录和文件

从远程hg清除旧目录和文件
EN

Stack Overflow用户
提问于 2015-09-22 16:12:02
回答 2查看 23关注 0票数 0

我最初将项目提交给具有以下结构的hg回购:

代码语言:javascript
复制
myapp/
    fizz/
        buzz.txt
    foobar.cfg
    whistlefeather/
        vroom-vroom-party-starter.xml

我使用以下命令完成了此操作:

代码语言:javascript
复制
hg add
hg commit -m "Initial commit."
hg push

然后我在本地更改了目录结构,如下所示:

代码语言:javascript
复制
myapp/
    buzz/
        fizz.txt
    config.foobar
    whistlefeather/
        vroom-vroom-party-starter.xml

然后,我运行了相同的命令:

代码语言:javascript
复制
hg add
hg commit -m "Changing some things."
hg push

当我进入远程回购时,我看到它具有以下结构(?!?):

代码语言:javascript
复制
myapp/
    fizz/
        buzz.txt
    buzz/
        fizz.txt
    foobar.cfg
    config.foobar
    whistlefeather/
        vroom-vroom-party-starter.xml

我可以运行哪些命令来从远程repo中推送/清除旧目录/文件(并使其反映本地计算机上的目录结构)?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-22 16:19:12

您在第二次提交之前发出的hg add命令实际上并没有从版本控制下删除文件,而是添加了新的文件。现在,您的存储库实际上是新旧文件的混合体。

若要添加新文件并删除丢失的文件,请使用hg addremove命令或hg commit -A

票数 1
EN

Stack Overflow用户

发布于 2015-09-22 21:59:08

其实很容易记住:

  • hg add将文件添加到回购程序中
  • hg remove删除文件
  • hg move移动或重命名文件
  • hg addremove查看当前的工作dir,并从repo中添加和删除文件,这样只有仍然存在的文件才会继续被跟踪。

这些操作中的每一个都可以按任何顺序执行。而只有提交才能真正创建一个变更集。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32721773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档